M2mobi - Dit zijn de mogelijkheden van Apple’s ARKit in iOS 11
Alle blogs

Dit zijn de mogelijkheden van Apple’s ARKit in iOS 11

Op 5 juni kondigde Apple tijdens het jaarlijkse World Wide Developer Conference (WWDC) haar ARKit voor iOS 11 aan. Maar, wat is ARKit? En wat zijn de mogelijkheden van deze techniek? In deze blog leg ik het uit.

Apple’s ARKit is een framework - ook wel een hulpmiddel - waarmee we augmented reality (AR) kunnen implementeren in hun app. Met ARKit is het niet alleen eenvoudiger geworden om AR te implementeren, maar is de manier waarop deze techniek wordt weergeven ook aanzienlijk verbeterd. Voordat ik verder in ga op Apple’s ARKit, leg ik uit wat AR precies is en wat de mogelijkheden zijn.

Wat is augmented reality?

Augmented reality - ook wel ‘toegevoegde realiteit’ - voegt informatie toe aan de werkelijkheid. Via de camera van je smartphone of tablet zie je de werkelijke omgeving, waarin extra informatie wordt getoond. De combinatie van de live camerabeelden en de virtuele content wekken de illusie dat de content zich in de echte wereld bevindt. Een techniek met veel mogelijkheden, welke in steeds meer apps wordt toegepast.

Een van de bekendste voorbeelden is Pokémon Go. Deze app plaatst pokémons in de ‘realiteit’ via een smartphone. Maar ook steeds meer bedrijven kiezen voor een implementatie van AR. Zoals de IKEA app, welke gebruikers gemakkelijk haar meubels laat plaatsen in hun eigen woonkamer. Zo kunnen gebruikers bijvoorbeeld zien of een specifieke kleur of stijl wel in hun huis past.

ikea pokemon img

De mogelijkheden van Augmented Reality

De mogelijkheden van Augmented Reality gaan uiteraard verder dan een pokémon of een meubelstuk. In de onderstaande voorbeelden wordt de toegevoegde waarde van AR duidelijk.

Een eerste voorbeeld waarbij Augmented Reality van toegevoegde waarde is betreft navigatie. Gebruikers kunnen bijvoorbeeld een lijn of pijl volgen welke via hun telefoon in de ‘realiteit’ is geplaatst. In het onderstaande voorbeeld zie je hoe een gebruiker een blauwe lijn kan volgen die hem naar zijn bestemming - in dit geval de Starbucks - begeleidt. Hier wordt tevens gebruik gemaakt van de locatie van een gebruiker (via GPS of WiFi), waardoor ook het aantal meter tot bestemming kan worden getoond.



Deze vorm van navigatie zou ook een mooie oplossing zijn voor Indoor Wayfinding. Bezoekers van grote venues, zoals ziekenhuizen en luchthavens, kunnen zo gemakkelijk hun afdeling of gate vinden. Dit is nóg persoonlijker dan de welbekende blauwe lijn op een kaart, zoals we nu kennen van Apple en Google maps.

Met de combinatie van AR en locatiebepaling kan je dus gemakkelijk aangeven waar een winkel of zelfs een persoon zich bevindt. Dit opent deuren naar nog meer functionaliteiten. Denk bijvoorbeeld aan het zoeken van een beursstand op een groot congres. Gebruikers hoeven alleen de zaal te filmen, om vervolgens een pointer te zien bij hun stand. Ook kun je gemakkelijk de stad verkennen, zoals in de video hierboven.

Augmented Reality voor de komst van ARKit

Augmented Reality is in principe niets nieuws onder de zon. Al voor de komst van ARKit werd deze functionaliteit in veel apps toegepast. Echter waren de mogelijkheden beperkt en was de implementatie van AR een stuk ingewikkelder.

Voorheen waren er zogeheten markers nodig voor een smartphone om AR toe te passen. Een marker is een herkenningspunt, zoals een QR-code of logo, en bepaalt waar een 3D object getoond moet worden op het scherm. Zodra de marker niet meer in beeld is, of niet meer wordt herkend, zal de positie van het 3D object niet meer accuraat bepaald kunnen worden. Dit komt ten nadele van de gebruikerservaring, doordat een gebruiker mogelijk meerdere keren zijn telefoon opnieuw moet richten op het herkenningspunt.

Daarnaast werd AR niet native ondersteund door apple devices. Zo moesten we gebruik maken van externe libraries voor het ondersteunen van AR. Een library is een term voor de verzameling van een stuk code welke specifieke functies toestaat (zoals AR) die door ons (app-developers) kan worden gebruikt in een eigen project/code. Het ontwikkelen van een eigen library voor AR vergt veel tijd, waardoor we vrijwel genoodzaakt waren gebruik te maken van een externe library. Niet ideaal, aangezien je als app-ontwikkelaar het liefst zo veel mogelijk zelf wil doen en niet afhankelijk wil zijn van derde partijen.

img ARKit marker

Hoe werkt ARKit?

Dankzij Apple’s ARKit wordt het toepassen van Augmented Reality een stuk toegankelijker voor developers. Dit komt doordat ARKit native is en al door veel devices wordt ondersteund. Welke devices dit precies zijn lees je verderop in deze blog. We hoeven nu geen gebruik meer te maken van externe libraries voor het ondersteunen van Augmented Reality en zijn daarmee niet meer afhankelijk van derde partijen.

Ook is het gebruik van markers verleden tijd. ARKit maakt namelijk gebruik van Visual Inertial Odometry (VIO). Met deze techniek zijn markers overbodig en herkent je smartphone opvallende eigenschappen van de omgeving en volgt deze eigenschappen per frame. Deze informatie wordt vergeleken met de informatie van de bewegingssensoren. Het resultaat is een accuraat model van de positie en beweging van het toestel. Oftewel, het 3D-object heeft een nog nauwkeurigere positie op je scherm, waardoor het lijkt alsof deze zich daadwerkelijk in de realiteit bevindt.

Interpretatie van de omgeving

Met het gebruik van augmented reality is de interpretatie van de omgeving erg belangrijk. Wanneer je smartphone een specifieke omgeving niet kan herkennen, kan het ook geen objecten in deze omgeving plaatsen. Apple’s ARKit maakt gebruik van een technologie - World-tracking - welke het mogelijk maakt om horizontale vlaktes, zoals een tafel of vloer, te herkennen. Deze vlaktes worden vervolgens gebruikt als ankerpunten om te bepalen waar een object getoond moet worden (zoals een nieuwe stoel in het voorbeeld van IKEA).

Tot slot kan ARKit ook een inschatting maken van het licht in een specifieke omgeving. Hierdoor kunnen augmented objecten donkerder gemaakt worden of juist meer oplichten, zodat ze beter aansluiten bij de werkelijkheid.

De beperkingen van ARKit

De komst van ARKit gaat uiteraard gepaard met een aantal beperkingen. Een daarvan is dat je toestel eerst moet kalibreren ten opzichte van de vlakke ondergrond. Dit gaat nog niet altijd even soepel en soms moet je even heen en weer bewegen voor je toestel genoeg herkenningspunten heeft gevonden. Dit zijn echter niet de enige beperkingen van deze ‘herkenning’. Zo herkent je toestel een te gladde ondergrond niet, omdat er te weinig herkenningspunten zijn. Een te gladde vloer werkt lastig, een houten tafel werkt weer heel goed. Ook heeft ARKit nog geen vertical plane-detection, oftewel verticale oppervlakken zoals een muur kunnen nog niet worden herkend.

Tot slot heeft ARKit nog geen object-herkenning. Schuif je bijvoorbeeld een voorwerp voor jouw virtueel geplaatst object? Dan verdwijnt dit voorwerp achter het AR-object. Ook als je een AR-object op een tafel plaatst en vervolgens onder de tafel filmt, zie je het AR-object nog steeds. De tafel wordt in die zin dus niet herkent als daadwerkelijke ondergrond.

Voor welke devices is ARKit beschikbaar?

Voor een goede performance van ARKit is aardig wat rekenkracht nodig. Een goede processor is dus geen overbodige luxe. Apple heeft een grens moeten trekken bij de A8 processor. Oftewel, alleen toestellen met een A9 processor of hoger (en iOS 11 of hoger) ondersteunen ARKit. Dit zijn de volgende toestellen:

  • iPhone X
  • iPhone 8 (Plus)
  • iPhone 7 (Plus)
  • iPhone 6s(Plus)
  • iPhone SE
  • iPad (2017)
  • iPad Pro

Blijf up-to-date

Binnen M2mobi zoek ik samen met het iOS team continu naar nieuwe toepassingen van ARKit. Wil jij meer weten over Augmented Reality en ARKit of op de hoogte blijven van deze nieuwe techniek? Houd dan onze blogpost in de gaten of neem contact met ons op.

Deel dit artikel

Andere artikelen