我知道kinect v2相机可以检测骨架关节位置, 但是我需要知道如何使用kinect-v2相机确定房间中某个点的(x,y,z)位置?
答案 0 :(得分:1)
为此,您需要使用CameraSpacePoint Structure
我在C#中给你一个例子。
为此,我将追踪左手,我想你有你的关节。
internal Joint HandLeft;
要获得一个职位,你需要使用它:
CameraSpacePoint pointLeft = HandLeft.Position;
之后你可以用你的位置:
pointLeft.X
pointLeft.Y
pointLeft.Z
当然你可以将值保存在浮点数中:
float test = pointLeft.Y;
答案 1 :(得分:0)
你可以在kinect v2中确定一个人的1-25点的(x,y,z)位置。 (Z)表示从每个点到kinect传感器的距离。 如果你需要找到你框架的每个点你必须使用ColorFrame类,那么你可以用Ellipse定义你最喜欢的位置当然是X-Y位置。 您的框架是2D视图框架,因此您没有z位置
答案 2 :(得分:0)
你可以看一下Vitruvius库,因为它有你正在寻找的关节位置和测量距离。
这将获得左手关节的y坐标
联合代码示例:body.Joints[JointType.HandLeft].Position.Y
这将获得坐标到Kinect V2传感器的距离
距离代码示例:Length(_bodies[_token.BodyArrIndex].Joints[JointType.SpineBase].Position)
Vitruvius GitHub链接:https://github.com/LightBuzz/Vitruvius
Vitruvius GitHub手势关节链接:https://github.com/LightBuzz/Vitruvius/tree/master/Kinect%20v2/WPF/LightBuzz.Vitruvius/Gestures
Vitruvius网站:https://vitruviuskinect.com/
希望它有所帮助!