Kinect - 如何在1秒内计算手关节的加速度

时间:2012-05-02 08:40:50

标签: c# iphone accelerometer kinect acceleration

我有一个使用Microsoft Kinect相机设备的应用程序。

在每个点我都可以在三维空间(X - Y - Z)中获得我的手的位置,我想计算每一轴上每秒钟的手的加速度。

基本上,我有一个起点的坐标,也是从那个起点开始的一秒之后,我想计算这两点之间的手的加速度。

StartPoint - (x1, y1, z1)

EndPoint after 1 sec from StartPoint ( 30 frames ) - (x2, y2, z2)

Acceleration between StartPoint and EndPoint = ?

此外,我可以获得手的所有其他坐标,但我想计算起点和终点之间的时间段内的加速度。

你能解释或告诉我怎么样?

1 个答案:

答案 0 :(得分:3)

从StartPoint到EndPoint的距离是一个有3个值的向量,它可以给你速度(距离单位/秒)

velocity(EndPoint.X - StartPoint.X, EndPoint.Y - StartPoint.Y, EndPoint.Z - StartPoint.Z)

现在,如果你想要加速度,你必须对两个速度值做同样的事情:起始点的速度和一秒后的速度。

acceleration(EndVelocity.X - StartVelocity.X, EndVelocity.Y - StartVelocity.Y, EndVelocity.Z - StartVelocity.Z)

acceleration 表示每个轴(X,Y和Z)的加速度,用(距离单位/秒2)表示