我的问题很简单。
我可以保存Kinect v2 (and Kinect v1)
所有同步流。如果我也有一个人的骨架,也会保存骨架信息。
我现在的问题是我想保存相同的同步信息(颜色,深度,红外线,身体指数和骨骼),但最多可以保存6个人。 我认为这可以通过以下两种方式之一来实现:
解决方案1) - 例如,使用ID作为文件名的参考,为6个人中的每个人创建一个骨架文件。
解决方案2) - 将所有这些信息保存在一个文件中,就像我对其余流一样,在每个新人之前再次使用ID。
此外,任何人都有任何关于如何锁定"每个人ID使用Kinect SDK 2.0
?
答案 0 :(得分:2)
我认为为每个人创建单个文件会更好。然后您可以非常轻松地更改内容。如果要在单个文件中添加所有详细信息,则会使代码变得复杂。
答案 1 :(得分:1)
就个人而言,我会使用人员ID在单个INI或XML文件下保存数据,以创建他们所引用的部分。如果您使用在线库,这将有助于降低代码的复杂性。这将允许更大的可扩展性,并使您能够一次编辑两个配置文件,而无需打开多个文件。
至于将用户“锁定”到ID,这不是Kinect本身所能够做到的。为此,您必须创建一个算法,根据有关用户的信息分配ID。要创建具有持久力的ID,您需要使您的程序能够可靠地分配基于面部识别,身体大小,名称和/或区别特征之类的独特能指。 ID必须与系统无关,这意味着无论运行程序的计算机是否曾经看过它,都会将相同的ID归于该人。这样,您不仅可以跟踪离开屏幕的人,还可以跟踪系统之间的人。然而,这很难协调,并且在使系统能够知道走回框架的人是相同的情况下几乎没有中间立场。 Kinect DOES会这样做,但它使用xbox帐户作为其唯一标识符,这是SDK不允许您使用的。 (TL; DR您必须使用SDK为这些帐户创建自己的xbox帐户版本和您自己的识别系统)