【发布时间】:2012-03-25 00:07:42
【问题描述】:
如何找出 Kinect 的视线和头部关节之间的角度。我已经尝试了很多,但我无法成功。我没有任何线索,下一步该怎么做。
请帮我找出找出这个角度的方法。
【问题讨论】:
标签: kinect
如何找出 Kinect 的视线和头部关节之间的角度。我已经尝试了很多,但我无法成功。我没有任何线索,下一步该怎么做。
请帮我找出找出这个角度的方法。
【问题讨论】:
标签: kinect
我希望我正确理解了您的问题,但这应该很容易。
头部关节有 3 个坐标 (X,Y,Z)。 Z 是与 kinect 深度相机的距离。 您可以将 kinect 深度相机视为位于世界的 (0,0,0) 中。这意味着深度图像的中心是原点。
在这种情况下,您可以使用 Atan2 计算 X 和 Y 角,如下所示:
X angle = atan2(headjoint.Position.Y, headjoint.Position.Z);
Y angle = atan2(headjoint.Position.X, headjoint.Position.Z);
【讨论】:
Andrei 的答案是正确的,但 X 和 Y 角的方向是错误的。
如果你想找出玩家在 X 轴上的角度(使用 c#),请执行以下操作:
xAngle = Math.Atan2(headjoint.Position.X, headjoint.Position.Z);
要找到 Y 轴的角度:
yAngle = Math.Atan2(headjoint.Position.Y, headjoint.Position.Z);
这对我非常有用,因为我正试图将音频束转向播放器。干杯!
【讨论】: