我很难理解当 kinect 与慢速计算机一起使用或需要大量逐帧计算时真正发生的情况。
让我们考虑用于恢复深度的C# 示例代码。
运行时动态由DepthFrameReady
事件驱动。DepthImageReady
当此类事件被触发时,将调用特此报告的函数。
private void DepthImageReady(object sender, DepthImageFrameReadyEventArgs e)
{
using (DepthImageFrame depthFrame = e.OpenDepthImageFrame())
{
if (depthFrame != null)
{
depthFrame.CopyDepthImagePixelDataTo(this.depthPixels);
//MY OPERATIONS BLABLABLA...
}
else
{
// depthFrame is null because the request did not arrive in time
}
}
}
我的交叉相关问题是:
- 这个函数实际上是为每一帧调用的吗?
- 怎么会
depthFrame
这样Null
? - 如果我的操作花费的时间比标称的帧间时间(33 毫秒)长,会发生什么?
- kinect里面有缓冲吗?
任何帮助表示赞赏。