提高Kinect for Windows DTWGestureRecognizer应用程序的效率

时间:2012-06-22 15:13:38

标签: kinect gesture-recognition codeplex

目前我正在使用适用于Kinect SDK v1.5的DTWGestureRecognizer开源工具。我已经录制了一些手势并使用它们来浏览Windows 7.我还为简单的事情实现了语音控制,例如打开PowerPoint,Chrome等。

我的主要问题是应用程序使用了相当多的CPU功率,导致它变慢。在手势和语音命令期间,CPU使用率有时会达到80-90%,这会导致应用程序在几秒钟内无响应。我在具有i5处理器和8 GB RAM的64位Windows 7机器上运行它。我想知道是否有任何使用此工具或Kinect的经验使得它更有效率和更少的性能占用。

现在我删除了显示RGB视频和深度视频的部分,但即使这样做也没有产生太大影响。感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

我能想到的一些因素是

  • 降低分辨率。
  • 使用轮询模型减少由应用程序记录/处理的帧,即DepthStream,ColorStream&的OpenNextFrame(int millisecondsWait)方法。 SkeletonStream 而不是事件模型。
  • 跟踪模式为Default而不是Seated(sensor.SkeletonStream.TrackingMode = 坐着的SkeletonTrackingMode.Default消耗更多的资源。
  • 使用sensor.MapDepthFrameToColorFrame而不是在循环中调用sensor.MapDepthToColorImagePoint方法。
  • 最后也是最重要的。是开源工具中使用的算法。