© Liashko/Shutterstock.com
Entwickler Magazin
Nutzung des Kinect unter Linux

Tiefensensor an Pinguin

Microsofts Sensorhardware erfreut sich enormer Popularität. Aufgrund des - im Vergleich zur gebotenen Leistung - geringen Preises sind sogar eingefleischte Unix-Heads gewillt, das Produkt aus Redmond an ihre Workstation anzuschließen.

Tam Hanna


Unter Windows ist die Verwendung des Sensors beinahe primitiv: Microsoft bietet ein komplettes SDK an, das alle relevanten Elemente enthält und die sofortige Nutzung unter .NET und C++ erlaubt. Für Linux-Nutzer sieht die Sache aufgrund einer Designentscheidung von Microsoft etwas anders aus. Beginnen wir deshalb mit einem kleinen Exkurs in die faszinierende Geschichte des Sensorsystems.

PrimeSense und Konsorten

Die Ermittlung von Tiefendaten ist seit Jahren gelöst: Das Time-of-Flight-Verfahren liefert extrem genaue Informationen über den Abstand zwischen einem Sensor und den ihn umgebenden Objekten. Dabei kommt ein an Radar erinnerndes Verfahren zum Einsatz. Der Sensor emittiert ein Lichtsignal und misst die Zeit, bis der Lichtpunkt am Objekt aufscheint. Aus der „Verzögerung“ lässt sich der Abstand ermitteln. Leider sind sehr schnell arbeitende CCD-Sensoren alles andere als preiswert, was die Massenmarkttauglichkeit des Systems stark einschränkt.

PrimeSense entwickelte eine weitaus preiswertere Methode zur Abstandsentwicklung. Eine spezielle Infrarotquelle emittiert Licht, dessen Form durch eine spezielle Linse im Laufe der Bewegung verformt wird. Zur Ermittlung des Abstands der individuellen Elemente analysiert der Sensor die Form des auf dem Objekt befindlichen Infrarotpunkts – der Verformungsgrad liefert Informationen über die Distanz.

Anfangs nutzte PrimeSense einen im Sensor eingebauten DSP, der die skelettale Analyse durchführte. Im Laufe der Produktentwicklung beschloss Microsoft, diesen Prozessor einzusparen und die Berechnung der Skelettaldaten stattdessen auf der Xbox 360 durchzuführen. Die ausgelieferte Hardware ist in Abbildung 1 schematisch dargestellt.

Abb. 1: Die Hardware des Kinect als Flussdiagramm

Ein im Handel erhältlicher Kinect versorgt die an ihn angeschlossene Workstation mit zwei regelmäßig aktualisierten „Bitmaps“. Das eine zeigt die von der „Webcam“ gelieferten Farbdaten, das zweite zeigt die Abstände der einzelnen Elemente.

Die in der Werbung gezeigte skelettale Analyse erfolgt ausschließlich am Rechner. Microsoft nutzt dazu eine Datenbank mit Informationen über den menschlichen Körperbau – dass diese nicht an Unix-Entwickler herausgegeben wird, folgt aus der Logik.

Hardware nach Maß

Derzeit sind drei verschiedene Sensortypen erhältlich. Für den Einsatz in Applikationen bietet Microsoft den Kinect for Windows an. Er ist der teuerste der drei, bietet aber als einziger den für den sitzenden Einsatz sehr wichtigen Near Mode an.

In ihm ist ...

Entwickler Magazin
Nutzung des Kinect unter Linux

Tiefensensor an Pinguin

Microsofts Sensorhardware erfreut sich enormer Popularität. Aufgrund des - im Vergleich zur gebotenen Leistung - geringen Preises sind sogar eingefleischte Unix-Heads gewillt, das Produkt aus Redmond an ihre Workstation anzuschließen.

Tam Hanna


Unter Windows ist die Verwendung des Sensors beinahe primitiv: Microsoft bietet ein komplettes SDK an, das alle relevanten Elemente enthält und die sofortige Nutzung unter .NET und C++ erlaubt. Für Linux-Nutzer sieht die Sache aufgrund einer Designentscheidung von Microsoft etwas anders aus. Beginnen wir deshalb mit einem kleinen Exkurs in die faszinierende Geschichte des Sensorsystems.

PrimeSense und Konsorten

Die Ermittlung von Tiefendaten ist seit Jahren gelöst: Das Time-of-Flight-Verfahren liefert extrem genaue Informationen über den Abstand zwischen einem Sensor und den ihn umgebenden Objekten. Dabei kommt ein an Radar erinnerndes Verfahren zum Einsatz. Der Sensor emittiert ein Lichtsignal und misst die Zeit, bis der Lichtpunkt am Objekt aufscheint. Aus der „Verzögerung“ lässt sich der Abstand ermitteln. Leider sind sehr schnell arbeitende CCD-Sensoren alles andere als preiswert, was die Massenmarkttauglichkeit des Systems stark einschränkt.

PrimeSense entwickelte eine weitaus preiswertere Methode zur Abstandsentwicklung. Eine spezielle Infrarotquelle emittiert Licht, dessen Form durch eine spezielle Linse im Laufe der Bewegung verformt wird. Zur Ermittlung des Abstands der individuellen Elemente analysiert der Sensor die Form des auf dem Objekt befindlichen Infrarotpunkts – der Verformungsgrad liefert Informationen über die Distanz.

Anfangs nutzte PrimeSense einen im Sensor eingebauten DSP, der die skelettale Analyse durchführte. Im Laufe der Produktentwicklung beschloss Microsoft, diesen Prozessor einzusparen und die Berechnung der Skelettaldaten stattdessen auf der Xbox 360 durchzuführen. Die ausgelieferte Hardware ist in Abbildung 1 schematisch dargestellt.

Abb. 1: Die Hardware des Kinect als Flussdiagramm

Ein im Handel erhältlicher Kinect versorgt die an ihn angeschlossene Workstation mit zwei regelmäßig aktualisierten „Bitmaps“. Das eine zeigt die von der „Webcam“ gelieferten Farbdaten, das zweite zeigt die Abstände der einzelnen Elemente.

Die in der Werbung gezeigte skelettale Analyse erfolgt ausschließlich am Rechner. Microsoft nutzt dazu eine Datenbank mit Informationen über den menschlichen Körperbau – dass diese nicht an Unix-Entwickler herausgegeben wird, folgt aus der Logik.

Hardware nach Maß

Derzeit sind drei verschiedene Sensortypen erhältlich. Für den Einsatz in Applikationen bietet Microsoft den Kinect for Windows an. Er ist der teuerste der drei, bietet aber als einziger den für den sitzenden Einsatz sehr wichtigen Near Mode an.

In ihm ist ...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang