1

有什么方法可以在 Kinect 深度图中将手指(按在墙上)与墙壁分开?为了澄清这个问题,我们的目标是获得一个深度图,允许我通过阈值化来分离按压在墙上的手指,这意味着 Kinect 需要能够测量手指和手指之间的深度差异。墙。

使用的工具:

  • 适用于 XBOX360 的 Kinect
  • 开放CV 2.4
  • Openni2
  • 微软视觉工作室 2010
4

1 回答 1

1

您提供的库不会自动执行此操作。我不确定您对图像处理有多精通,但为了回答,我假设您是。

我不确定您是否想简单地将像素标记为“墙”或“手指”,或者您是否想知道手指何时进入墙的某个距离阈值。

如果你有一个干净的框架,Kinect 只是看着墙壁并且没有手指,那么你可以使用该框架来准确找到墙壁的位置。您可以通过在多个帧上平均深度帧来创建一个简单的基于深度的背景帧。然后对于后续帧,如果有任何显着差异(例如,>3 厘米),您可以声明为手指。

稍微高级一点的替代方法是使用表面法线。对于每个深度像素 (x,y,z),取该像素与 (x+1,y,z1) 以及该像素与 (x,y+1,z2) 之间向量的叉积。如果您正在查看非弯曲墙,则表面法线应该是均匀的。在Kinect Fusion Video中,它们将表面法线 (x,y,z) 映射到 (r,g,b),效果非常好。任何具有与墙不同的表面法线的东西,都可以声明为手指。

于 2013-11-03T16:49:49.597 回答