2011-01-01 12 views
4

Ich verwende derzeit eine Processing Kinect-Bibliothek, die eine Tiefenkarte liefert. Ich habe mich gefragt, wie ich das nehmen könnte und wenn möglich, um ein 2D-Skelett zu erstellen. Ich suche hier keinen Code, nur einen allgemeinen Prozess, den ich verwenden könnte, um diese Ergebnisse zu erzielen.Hat jemand eine Idee, wie man ein 2D-Skelett mit der Kinect-Tiefenkarte erstellt?

Auch angesichts der Tatsache, dass wir dies bisher in mehreren Kinect-Spielen gesehen haben, wäre es schwierig, mehrere Skelette gleichzeitig laufen zu lassen?

+1

google openNI und kinect, es hat es eingebaut. –

Antwort

5

Haftungsausschluss: Der Grund, warum Sie immer noch keine Antwort für diese Frage erhalten haben, ist wahrscheinlich, weil das ein aktuelles Forschungsproblem ist. Daher kann ich Ihnen keine direkte Antwort geben, aber ich werde versuchen, mit einigen Informationen und nützlichen Ressourcen für dieses Thema zu helfen.


Es gibt hauptsächlich 2 verschiedene Ansätze, um ein Skelett aus einer Tiefenkarte zu erstellen. Der erste ist maschinelles Lernen, der zweite ist rein algorithmisch.

Für die Maschine, die man lernt, würden Sie viele Beispiele von Leuten benötigen, die eine vorbestimmte Bewegung machen, und diese Proben verwenden, um Ihren Lieblingslernalgorithmus zu trainieren. Das ist der Ansatz, der von Microsoft in der XBox übernommen und implementiert wurde (source), er funktioniert wirklich gut, aber Sie brauchen Millionen von Samples, um es zuverlässig zu machen ... ein ziemlicher Nachteil.

Der "algorithmische" Ansatz (verstehen ohne Verwendung eines Trainingssatzes) kann auf viele verschiedene Arten erfolgen und ist ein Forschungsproblem. Es basiert oft darauf, die möglichen Körperhaltungen zu modellieren und zu versuchen, diese mit dem erhaltenen Tiefenbild zu vergleichen. Das ist der Ansatz, den PrimeSense (die Jungs hinter der Kinect-Tiefenkamera-Technologie) für ihr Skelett-Tracking-Tool NITE gewählt haben.

Die OpenKinect community verwaltet ein Wiki, wo sie einige interesting research material zu diesem Thema auflisten. Das könnte Sie auch interessieren: this thread on the OpenNI mailing list.

Wenn Sie sich für eine Implementierung eines Skeletts Tracking-Tool suchen, veröffentlicht Primesense NITE ( Quelle geschlossen), der, den sie gemacht: es ist Teil des OpenNI framework ist. Dies wird in den meisten Videos verwendet, die Sie mit Skeleton-Tracking gesehen haben. Ich denke, es ist in der Lage, bis zu 2 Skelette gleichzeitig zu handhaben, aber das erfordert eine Bestätigung.

2

Die beste Lösung ist FAAST (http://projects.ict.usc.edu/mxr/faast/), die OpenNI erfordert. Ich habe Schwierigkeiten, OpenNI für die Arbeit an meinem Computer zu bekommen. Ich habe noch keinen Ansatz gesehen, der CL 'NUI von Code Laboratories verwendet.

+0

Das klingt gut, aber ich betreibe OSX, also glaube ich nicht, dass es eine Option ist. – Miles

+1

Ja, es ist eine Option. Das Wekinator-Projekt funktioniert unter OSX. Es stellt kein Skelett zur Verfügung, wendet jedoch maschinelles Lernen auf der Tiefenkarte für Anwendungen an, die andernfalls das Skelett benötigen. –

+0

... anstelle von FAAST https://github.com/Sensebloom/OSCeleton#readme im OpenNI/NITE-Framework verwenden. OpenNI/NITE haben OSX-Binärdateien. Siehe http://c4c.posterous.com/installing-open-ni-ginect-drivers-and-nite-on. Für einige Links stellen Sie sicher, dass Sie zum Ende der Seite scrollen, um die OSX-Dateien zu finden. –

Verwandte Themen