使用Kinect骨骼关节进行静态姿势识别的最佳算法是什么?

时间:2016-01-18 21:13:43

标签: algorithm kinect

您是否知道任何识别静态姿势的强大方法?

我尝试用给定的间隔Xmax,Xmin,Ymax,Ymin,Zmax,Zmin保存每个关节位置,然后尝试查看20个关节是否在给定的间隔内,但它根本不能正常工作。

在此之后我尝试了相对坐标到父关节,但是再次......它不起作用......

我不知道怎么做...任何人这样做了?我这里只提到静态姿势,而不是动态姿势。

1 个答案:

答案 0 :(得分:2)

您可以尝试定义两种姿势之间的距离。

首先,你应该“规范化”每个姿势,以便拥有相对位置。您应该选择“基础关节”(例如,脊柱或头部),然后从所有关节坐标中减去基础关节坐标。

示例:

Skeletal joints

在上图中,您可以将关节编号2视为基础关节。因此,当您对所有关节进行标准化时,基础关节的总相对坐标将等于(0,0,0)。

然后,您可以定义两个姿势之间的距离。让我们假设这些姿势是姿势 A 姿势 B 。在我的一个项目中,我使用了以下内容:

Posture Distance

在上面的公式中,姿势 A [Joint i ] 表示姿势的第i个关节A ,由关节数关节构成。 distance3D 指的是经典的three-dimensional Euclidean distance

然后,您应该定义一个恒定的阈值距离(我们将其命名为 T D )。

现在你可以说两个姿势“相等”(或者,更准确地说,相似之处,可以认为是相同的),如果:

T D > PostureDistance

我不知道这是否是最好的方法,但在我的情况下它运作得很好(并且实现起来很简单)。