2

有人可以提供如何在不同线程中运行 MS Kinect Color、Skeleton 和 Depth 流的示例吗?我已经搜索了互联网,但找不到任何东西。提前致谢。

4

1 回答 1

2

Microsoft Kinect Developer Toolkit 中的KinectExplorer示例提供了一个KinectDepthViewer控件,该控件显示了如何在不同的线程(DepthColorizer类)中处理深度数据。这些概念也可以适用于处理骨架数据。

您没有解释为什么要在不同的线程上运行这些,因此不清楚为什么需要这样做。所有的数据都是从 UI 线程收集的,已经在它们自己的进程中了。当你想在 UI 线程上与他们一起工作时,这才是最重要的......

颜色流只是一个 RGB 流。您可能需要对此图像进行一些处理(例如,蒙皮和面部跟踪),但通常不会像其他图像那样使用它。通常需要的唯一处理是将流中的位复制到图像中以进行显示,这无论如何都必须在 UI 线程上完成。

如果您出于任何原因希望为深度流着色,那么在非 UI 线程上这样做是有益的。如果您正在对其进行一些特殊处理,那么也可以在非 UI 线程上完成。上面的示例代码可以很容易地修改。

骨架流已经需要 CPU 付出最大的努力,但是所有这些努力已经为您完成了远离 UI 的工作。一旦你有机会触摸它,数据只是一系列对象和数组。在这一点上,我真的看不出你需要在单独的线程上做什么。

如果您解释您要完成的工作,则需要单独的处理线程可能会更清楚。

于 2012-11-06T16:53:03.267 回答