我正在试图弄清楚如何识别一个人的手臂是朝着还是远离Kinect摆动/移动。我认为这很像是对传感器的击打或冲击。
当手臂朝向或远离传感器时,深度会发生变化, 但是如何识别此手势? ?
我正在使用Kinect for Windows(旧版本)和SDK 1.8。我还看了EMGU(OpenCV的C#包装器)。
回答这个问题的任何帮助都会受到极大关注。
答案 0 :(得分:1)
您可以查看并使用Tracking Users with Kinect Skeletal Tracking和Channel 9s tutorials。
1。从用户的基本位置开始。
2。保存手臂关节的位置(例如左肩,左肘,左手腕和左手)。
3。第2步保存的位置是您的参考点。使用这些来计算挥杆动作(例如(handLeftNew.z-value< handLeftReference.z-value),因此向Kinect移动。)
代码示例
// get the joint
Joint leftHand = skeleton.Joints[JointType.HandLeft];
// get the individual points of the left hand
double lefttX = leftHand.Position.X;
double leftY = leftHand.Position.Y;
double leftZ = leftHand.Position.Z;