0

我正在尝试使用 Kinect 绘制骨架,并且可以看到该设备最多支持同时连接 4 个传感器

然而不幸的是,我目前只有 1 个传感器可供使用,因此我不确定如果您连接了多个传感器,SDK 的行为。

具体是在暴露的 API 中合并数据吗?假设您正在使用处理

private void Kinect_AllFramesReady(object sender, AllFramesReadyEventArgs e)
{
}

事件是否SkeletonFrame.SkeletonArrayLength增加到12、18、24?

如何访问不同的ColorImageFrameDepthImageFrame每个传感器?通常你可能会做这样的事情

using (ColorImageFrame colorFrame = e.OpenColorImageFrame())
{
    //Write pixels
}

访问相机,但我没有看到任何明显的方法来访问特定于设备的数据。

非常感谢您在构建同时使用多个 Kinect 传感器的应用程序时,对上述内容的解释以及关于哪些(如果有的话)其他差异对理解很重要的指导。

4

1 回答 1

2

每个 KinectSensor 可以有单独的绑定和事件。

foreach (var sensor in KinectSensor.KinectSensors)
{
    if (potentialSensor.Status == KinectStatus.Connected)
    {
       //add binding and events.
    }
}

所以这取决于你,你可以将事件绑定到同一个处理程序并根据发送者确定如何处理它,但我认为你需要创建自己的逻辑并将数据绑定在一起。

SkeletonArrayLength 不会增加,因为它是每个 SkeletonStream 唯一的。

于 2014-04-25T10:02:58.317 回答