如何将kinect骨架数据映射到模型?

时间:2013-05-10 12:30:11

标签: kinect skinning openni

我已经设置了一个Kinect设备,并编写了一个简单的程序,使用OpenNI 2.0将流读取到QImage。我已经用Ni​​TE 2.0建立了骨架跟踪,所以我可以访问所有15个关节的坐标。我还使用SceniX设置了一个简单的场景。骨架跟踪提供的手坐标用于绘制2个框以表示手。

我想将整个骨架绑定到(装配)模型,似乎无法找到任何好的教程。任何人都知道我该怎么办?

2 个答案:

答案 0 :(得分:1)

根据您的要求,您可以为Unity Engine https://www.assetstore.unity3d.com/en/#!/content/10693

查看类似的内容

虚幻4引擎还有一个名为KINECT 4 UNREAL FROM OPAQUE MULTIMEDIA的插件

但是如果你必须亲自为自己编写,我使用OpenGL做了类似的事情。 我使用Assimp http://assimp.sourceforge.net/来加载动画Collada模型和OpenNi与NiTE进行骨骼跟踪。然后我使用来自Nite骨架的旋转数据并将其应用到我的装配网格的相应骨骼,覆盖动画的旋转值。不要使用位置数据。它会拉伸你的骨头并扭曲网格。 有许多免费3D模型的来源,如TF3DM.com。我自己使用自定义Rig为我的模型适合我的代码。因此,您可能会考虑使用Blender以及如何建立模型。 还要记住,Nite Skeleton对于骨盆没有关节,并且Nite关节不会继承他们的父母轮换,这与被操纵模型中的骨骼相反。

我希望这有助于继续发展。

答案 1 :(得分:0)

您可以尝试使用DigitalRune,它们具有将装配模型绑定到关节的示例。他们也提到了一些例子。试试http://www.digitalrune.com/Support/Blog/tabid/719/EntryId/155/Research-Augmented-Reality-with-Microsoft-Kinect.aspx

此外,您需要知道在blender中为模型设置动画并将其导出到XNA或工作图形框架。例如: - http://www.codeproject.com/Articles/230540/Animating-single-bones-in-a-Blender-3D-model-with#SkinningSampleProject132