Ich verfolge einen Ball mit den rgb-Daten von kinect. Danach schaue ich mir die entsprechenden Tiefendaten an. Beides funktioniert prächtig. Nun möchte ich die tatsächlichen X-, Y- und Z-Weltkoordinaten (d. H. Skelett-Raum) anstelle der x_screen-, y_screen- und Tiefenwerte haben. Leider helfen mir die Methoden des kinect sdk (http://msdn.microsoft.com/en-us/library/hh973078.aspx) nicht. Im Grunde brauche ich eine Funktion "NuiImageGetSkeletonCoordinatesFromColorPixel", aber ich existiere nicht. Alle Funktionen gehen grundsätzlich in die entgegengesetzte RichtungKinect: Vom Farbraum zu Weltkoordinaten
Ich weiß, dass dies wahrscheinlich mit openNI getan werden kann, aber ich kann es aus anderen Gründen nicht verwenden.
Gibt es eine Funktion, die das für mich tut oder muss ich die Konvertierung selbst machen? Wenn ich es selbst tun müsste, wie würde ich das tun? Ich skizzierte ein kleines Diagramm http://i.imgur.com/ROBJW8Q.png - meinst du, das würde funktionieren?
Warum funktioniert ['NuiTransformDepthImageToSkeleton'] (http://msdn.microsoft.com/en-us/library/jj663871.aspx) nicht für Sie? –
Ich track mit Farbe. Also habe ich x, y in "rgb-space". Ich transformiere dann meine Tiefendaten in den rgb-Raum, indem ich eine andere SDK-Funktion verwende: NuiImageGetColorPixelCoordinatesFromDepthPixelAtResolution, um den entsprechenden Tiefenwert nachzuschlagen. Leider gibt es keine Umkehrung dieser Funktion, daher habe ich keine Möglichkeit, in den Tiefenraum zurückzukehren. Aber für NuiTransformDepthImageToSkeleton brauche ich x, y in der Tiefe Raum :( [EDIT]: Oder ist das eigentlich nur ein Missverständnis von mir? Wenn sie sagen "Die X-Koordinate der Tiefe Pixel." In der Dokumentation, tun sie tatsächlich bedeuten die x, y im RGB-Raum? – AnonEnginerd
Ah Entschuldigung ich missverstanden ... Ich würde [diese Frage] sehen (http://stackoverflow.com/questions/11902593/get-depth-at-color-position-kinect-sdk) Es klingt genau wie du willst –