ARKit vs ARCore: Mobile augmented reality from Apple and Google
The way we consume content has changed and is changing radically. In this sense, augmented reality is increasingly present and is gradually taking on a very important role. In fact, for some time now it has been fully accessible to everyone, how? Through a device that we all have, our mobile phone. This is where Apple and Google’s current big bet on augmented reality stands out: ARKit and ARCore, for their respective mobile platforms: iOS and Android.
What are ARKit and ARCore?
It depends on who is asking this question: a user or an application developer?
For a developer, ARKit and ARCore are frameworks or development environments that allow them to create augmented reality experiences that until recently were almost inaccessible. Basically, these are libraries that are added, on the one hand, to the embedded software of mobile phones (as part of their Operating System) and, on the other hand, as tools within the development environments with which we create applications.
For a user, ARKit and ARCore basically represent innovative features that their mobile phones have, that is, they are improvements within the Hardware and Software that compose them and allow them to experience augmented reality in a completely new way, in the same way that a camera with more resolution or a new way of unlocking the phone using a fingerprint or facial recognition can be.
Similarities and differences between both
There are more similarities than differences between these two improvements of the technological giants. In reality, they are two ways of approaching the same problem that probably use very different techniques and algorithms internally, but which offer very similar possibilities as a final result.
Basically ARKit and ARCore offer SLAM (Simultaneous Location And Mapping) in a precise and integrated way in their new devices. But what is SLAM? It is the possibility of mapping or scanning the immediate environment, locating the device that performs it in that space, in real time. This, translated, allows us, by means of a device with a camera and enough processing capacity, to calculate at all times the exact place where that device is located in a space, with respect to the set of physical elements that compose the space: walls, ceiling, floor, furniture, obstacles of all kinds, etc.
However, SLAM by itself does not allow us to see anything, but simply to know our position at all times. But it is the basis for, from there, placing relevant visual information about our real environment. As we know our position, with the orientation of the camera we detect the obstacles around us and at any moment we can add visual components (3D objects, images, videos, animated scenes…) using this real environment as a support and leaving them fixed in their positions all the time. In other words, while we are calculating the position of the device, we are adding visual layers and, in addition, those layers that we add will always be in the position assigned to them, generating a sensation that the 3D object is placed in that space.
Uses and applications: some examples
ARKit and ARCore are very useful technologies for endless applications. Thanks to SLAM, we do not depend on references such as markers to position a visual element. Imagine, for example, in the world of marketing, the typical augmented reality advertisements that had to be displayed on a magazine, a marker or a specific logo. Now they can be placed anywhere, at any time.
For the world of entertainment, for example, where games can be developed whose main component is the real world, the game will be the perfect union between the virtual world and the world around us.
Think of another sector such as training, where it is very easy to include exam questions or concepts to learn about the component in question that is being studied: a model of the human body, an electric motor, a globe; or simply being able to see the solar system floating in our room.
It is true that ARCore and ARKit are features that require high-frame cameras and good image quality as well as high processing to be able to perform all the calculations that SLAM requires, in real time. But it is true that such features or improvements are being implemented today in most smartphones as mobile phones have increasingly better processing capabilities and more powerful cameras.
ARKit can be available from iOS 11 and above and ARCore is available from Android 7.0.