我已经设置了一个Kinect设备,并编写了一个简单的程序,使用OpenNI 2.0将流读取到QImage。我已经用NiTE 2.0建立了骨架跟踪,所以我可以访问所有15个关节的坐标。我还使用SceniX设置了一个简单的场景。骨架跟踪提供的手坐标用于绘制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