Een blik op uitdagingen bij het creëren van de volgende generatie Kinect voor de Xbox One

Pictogram voor leestijd 6 minuut. lezen


Lezers helpen MSpoweruser ondersteunen. We kunnen een commissie krijgen als u via onze links koopt. Tooltip-pictogram

Lees onze openbaarmakingspagina om erachter te komen hoe u MSPoweruser kunt helpen het redactieteam te ondersteunen Lees meer

Ik denk dat Playstation er serieus spijt van gaat krijgen dat ze hun versie van Kinect niet met de PS4 hebben gebundeld. Misschien wisten ze dat het sowieso niet zo goed zou zijn als Kinect 2.0.

Cyrus Bamji, Microsoft-partnerhardwarearchitect voor de in Silicon Valley gebaseerde Architecture and Silicon Management-groep van Microsoft, en leden van zijn team probeerden een time-of-flight-camera in Xbox One te integreren. 

Een time-of-flight camera zendt lichtsignalen uit en meet vervolgens hoe lang het duurt voordat ze terugkeren. Dat moet tot op 1/10,000,000,000 van een seconde nauwkeurig zijn; de snelheid van het licht. Met dergelijke metingen kan de camera het licht onderscheiden dat wordt gereflecteerd door objecten in een kamer en de omgeving. Dat levert een nauwkeurige diepteschatting op waarmee de vorm van die objecten kan worden berekend.

Die snelheid van het licht zou een grote vooruitgang zijn voor het Kinect-sensorgedeelte van Xbox One, dat volgende maand op 13 lanceringsmarkten wordt uitgebracht. De nieuwe Kinect, een belangrijke onderscheidende factor voor Xbox One ten opzichte van zijn concurrentie, moest een groter gezichtsveld vastleggen met grotere nauwkeurigheid en hogere resolutie. Een infraroodsensor maakt objectidentificatie mogelijk die weinig tot geen licht nodig heeft, en verbeterde handpositieherkenning, waardoor gamers en meer casual gebruikers de console met hun handen kunnen bedienen.

"Als we een relatief nieuwe technologie, zoals time-of-flight, nemen en deze in een commercieel product verwerken, gebeuren er een heleboel dingen", zegt hij. “Er zijn dingen waarvan we niet wisten hoe belangrijk ze waren totdat het product werd gemaakt. Zo weten we in theorie dat bewegingsonscherpte in time of flight een groot probleem is, maar hoe belangrijk is pas te ontdekken als je er een product mee bouwt en dat product een excellente ervaring moet opleveren.”

Nauwkeurige dieptemeting in diverse scènes met de hoge resolutie van de nieuwe camera en een breder gezichtsveld zorgen ook voor problemen met de gebruikerservaring, waardoor het moeilijk is om te voorkomen dat kleine objecten, zoals een vinger, naar de achtergrond verdwijnen, bijvoorbeeld. Hoewel deze functies meer veelzijdige apparaatprestaties leverden, creëerden ze ook hun eigen problemen in real-life scenario's, zoals de behoefte aan nauwkeurige dieptemeting in diverse scènes met een hoge resolutie. Dat vereiste niet alleen het bredere gezichtsveld en de bewegingsonscherpte, maar vereiste ook snel schone gegevens. Xbox One moest klaar zijn voor de feestdagen van 2013.

De analoge aard van de vluchtgegevens vormde een uitdaging bij het leveren van een dergelijke oplossing.

"De time-of-flight-gegevens die uit onze sensor komen, zijn per pixel, per frame, en er is veel meer analoge informatie", zegt Acharya. "Een ander probleem was dat de objecten op de voorgrond dicht bij de achtergrondobjecten in de achtergrond zouden smelten - opnieuw vanwege de analoge aard van hoe onze sensor de dieptegegevens levert voor pixels die op randen landen."

“Dit resulteerde in veel informatie, en om het gebruik door software- en gameontwikkelaars gemakkelijker te maken voor voorgrond-/achtergrondextractie en scènesegmentatie, was de vereiste om deze gegevens tegelijkertijd op te schonen door software-algoritmen in de pijp toe te voegen, maar zonder een prestatiehit. Dit was cruciaal. We zijn begonnen met verschillende werkstromen en hebben uiteindelijk besloten om de parameters in het systeem te optimaliseren om het probleem op te lossen.”

De medewerkers wilden een duidelijke scheiding van voorgrond en achtergrond leveren, zelfs als de objecten dicht bij elkaar staan. Ook dat bleek moeilijk. En toen was er bewegingsonscherpte.

 "Bewegingsonscherpte", legt Acharya uit, "is een parameter die moet worden geminimaliseerd en is niet technologiespecifiek. De time-of-flight-camera maakt gebruik van Global Shutter, waardoor bewegingsonscherpte aanzienlijk is verminderd - van 65 milliseconden in de originele Kinect tot minder dan 14 milliseconden nu.”

Andere uitdagingen dienden zich aan. Om te beginnen werd de verwerkingstijd een probleem. In de wetenschappelijke literatuur over time-of-flight systemen was de verwerkingstijd geen issue. In de laboratoriumomgeving werkte de technologie prima. Maar Xbox One moet maar liefst 6.5 miljoen pixels per seconde verwerken. En slechts een klein deel van de rekenkracht van Xbox One kan voor deze taak worden gebruikt. Het leeuwendeel is begrijpelijkerwijs gereserveerd voor essentiële zaken zoals gamen, het volgen van skeletten, gezichtsherkenning en audio.

"Je moet voor elke pixel heel, heel lichte berekeningen uitvoeren", zegt Krupka, "en dit is een van de dingen die het probleem uitdagend en anders maakten dan de typische benadering in de academische literatuur op dit gebied."

Opmerkelijk genoeg kwam het allemaal samen, en dat betekent dat terwijl entertainmentliefhebbers over de hele wereld binnenkort blij zullen zijn met de Xbox One-ervaring, dat geldt ook voor degenen die graag willen ontwikkelen voor het platform. Door die edge-data-ruis te verminderen, is de data-ontwikkelaar klaar voor gebruik, en door duidelijk te kunnen segmenteren tussen de voorgrond en de achtergrond, wordt een complex rekenprobleem opgelost. De gegevens zijn schoon en kunnen gemakkelijker worden opgenomen door game-ontwikkelaars.

Een ander fascinerend kenmerk van het Kinect-detectieapparaat in Xbox One komt van de infraroodsensor, die objecten in een volledig verduisterde kamer kan identificeren. Het kan mensen herkennen en lichamen volgen, zelfs zonder dat er licht zichtbaar is voor het blote oog. Het kan een handhouding op vier meter afstand herkennen, de vingers van een kind zien en je identiteit onthouden, zelfs zonder kamerverlichting.

Door het bredere gezichtsveld kunnen meer spelers tegelijkertijd een Xbox One-game spelen. Met de nieuwe console kunnen maar liefst zes spelers zich in één scène verdringen. Een lange volwassene kan met een klein kind spelen zonder dat hij of zij uit beeld wordt geperst. Gebruikers krijgen een betere ervaring als ze dichtbij, verder weg of aan de rand van de kamer staan.

En dankzij de verbeterde handpositieherkenning kunnen gebruikers met de Xbox One communiceren door gewoon hun handen te gebruiken - geen controller nodig. Dankzij de infraroodcamera kunnen handactiviteiten bij elke verlichting of helemaal niet worden geïdentificeerd. Eerdere hand-pose-oplossingen waren in staat om snelheid of nauwkeurigheid te leveren, maar niet beide. De hand-pose-oplossing die gezamenlijk is bedacht door het Xbox-team en Microsoft Research kan beide.

Bron: Het officiële Microsoft-blog

Meer over de onderwerpen: Kinect, xbox een