【问题标题】:Normalize the Kinect Skeleton Joints标准化 Kinect 骨架关节
【发布时间】:2013-09-02 09:55:43
【问题描述】:

我正在开展一个项目,使用 Microsoft Kinect SDK 通过骨骼识别人。

问题在于,随着人向 Kinect 传感器移动,骨骼尺寸会增大。我需要以一种独立于人的位置的方式来构建我的系统。我不知道如何解决这个问题。

一些相关著作说“骨架应该在时域中进行归一化”。 ,我不知道这是什么意思!

任何建议将不胜感激。

谢谢

【问题讨论】:

    标签: image-processing kinect


    【解决方案1】:

    我相信标准化方法取决于您需要它的原因。也许您可以提供更多关于为什么需要标准化骨架的信息。

    以下是我能想到的一些方法:

    1. 计算骨架关节的 3D 边界框 (AABB)。找到 AABB 最大的轴并计算比例因子,使大小为 1.0。然后,您可以在所有其他轴上应用此比例因子。

    2. 也许您希望骨骼关节独立于它们的位置。在这种情况下,您可以使用关节(例如脊柱)并考虑骨骼的起源。然后,计算每隔一个关节位置:

      newjointPosition = oldjointPosition - spinPosition;

    如果您需要更具体的答案,请告诉我们更多有关您的应用和要求的信息。

    【讨论】:

    • 感谢您的回答。让我举个例子来解释一下。当我使用 Kinect 测量一个人的身高时,我会根据用户的位置(用户与传感器之间的距离)得到不同的结果。无论用户的位置如何,我都希望得到相同的结果。
    • 此时你如何计算人的身高?我现在没有要测试的 kinect,但据我记得关节位置在 3D 空间中。这意味着与传感器的距离无关紧要...... Y 分量应该是恒定的。
    • 此链接显示link 高度是以下线段长度的总和: Head - ShoulderCenter ShoulderCenter - Spine Spine - HipCenter HipCenter - KneeLeft 或 KneeRight KneeLeft / KneeRight - AnkleLeft / AnkleRight AnkleLeft / AnkleRight - FootLeft / FootRight
    • 该方法似乎是公平的,尽管它容易出现某种程度的错误(正如文章中所说)。您是否看到测量的用户在移动时身高发生了很大变化?与您所站立的传感器的距离是多少?
    • 谢谢。我错了!你是对的。现在,无论距离多远,我几乎都得到了相同的高度。但是怎么做?您能否向我解释一下“关节位置在 3D 空间中是什么意思。这意味着与传感器的距离无关紧要...... Y 分量应该是恒定的”?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多