Kategorien
Buch Empfehlungen Xbox Kinect SDK

Microsofts technische Entwicklungsgeschichte der Kinect

Die die Arbeit an der Kinect startete bei Microsoft nachdem Nintendo 2005 ihr Wii-Konsole mit der Wii Remote Steuerung herausgebracht hatte. An der eigentlichen Steuerung wurde aber schon seit 2003 gearbeitet: siehe  Geschichte der NUI/Kinect.

Die Entwicklung der Hardware

Zu Beginn wurden 2 Teams gegründet, die auf Basis von 2 unterschiedlichen Technologien die Kinect bauen sollten. Die Technologien kamen von den Firmen 3DV (gekauft für 35mio$) und PrimeSense (ein unabhängiges israelisches Forschungsunternehmen). Am Ende schaffte nur die PrimeSense Technologie die hohen Anforderungen an die Technik zu bewerkstelligen und einen Prototypen zu bauen, der RGB Kamera, Infrarotsensor und einen Infrarotlichtsensor enthielt und Tiefendaten mit 30fps rendern konnte. Die Geschwindigkeit wurde dadurch ermöglicht, dass die Tiefendaten mit Hilfe der Infrarotdaten auf eine neue Art und Weise bestimmt wurden:

Vorher wurde die Zeit gemessen, die die Daten benötigen, um vom Sensor auf einen Gegenstand und wieder zurück zum Sensor flogen. Die neue Technik projeziert ein Muster von rote Punkte auf den Raum und misst die Größe und den Abstand um die Tiefendaten zu bestimmen.

In die Kinect wurde ein 4-faches Mikrofon Array eingebaut, um in großen Räumen effektiv Spracherkennung durchführen zu können. Microsoft konnte dabei auf die Erfahrung von Windows zurückgreifen, in dem Spracherkennung seit Windows XP enthalten ist.

Die Entwicklung der Software

Auf Basis der Hardware wurde als erstes das Problem des Motion-Trackings gelöst. Das Kinect Entwicklungsteam (Project Natal) beauftragte Jamie Shotton den Microsoft Research in Cambridge mit der Verbesserung des ersten Motion-Trackings Algorithmuses, der folgende Nachteile hatte:

  • der Spieler musste zu Beginn die bekannte T-Pose einnehmen zur Kalibrierung
  • die Kamera verlor den User gelegentlich und das System musste wieder neu kalibriert werden incl T-Pose
  • es funktionierte nur mit bestimmten Körpertypen, nämlich mit denen der leitenden Microsoft Entwickler 🙂
  • aus der Silhouette des Users mussten die Körperteile und daraus die Gelenke extrahiert werden. Aus den Gelenken kann dann das Skelett erzeugt werden, welches die Kinect für die Bewegungen benutzt

Die Lösung: Es wurde Computer Learning verwendet und eine Bewegungssoftware mit Tonnen von Daten gefüttert, u.a. aus Hollywoods Motion Capture Studios. Daraus resultierte ein Entscheidungsbaum, der die Gelenke erkennen konnte.

Eine weiteres Highlight ist die amerikanische Spracherkennung, die mit verschiedenen amerikanischen Akzenten umgehen kann und auch mit Hilfe von Computer Learning erstellt wurde.

Die Kinect wurde schließlich am 26.9.2010 veröffentlicht, 3 Jahre nach dem eigentliche Veröffentlichungstermin zur E3 2007. In den ersten 60 Tagen wurden durchschnittlich 133.000 Einheiten verkauft pro Tag wodurch die Kinect vor dem iPhone und iPad im Guiness Buch der Rekorde steht.

Weiterlesen: Die technische Geschichte der Xbox Kinect und NUI oder Kinect SDK Tutorial Installation unter Windows 7