Postprocess Depth Image使用Kinect sdk /其他工具获取Skeleton?

时间:2015-08-10 12:49:17

标签: kinect kinect-sdk ros

简短的问题:我想知道是否可以利用kinect SDK / Nite获取深度图像IN,骨架OUT软件。

长长的问题:我正在尝试将从v2 Kinect捕获的深度,rgb,骨架数据流转储到rosbags中。但是,据我所知,使用ros捕获Linux上的骨架流,kinect v2尚不可能。因此,我想知道我是否可以丢弃包含rgb,深度流的rosbags,然后对这些包进行后处理以获得骨架流。

我可以使用Microsoft kinect v2 SDK在Windows上捕获所有三个流,但是然后将它们转储到rosbags中,所有元数据(camera_info,同步信息等)都会很痛苦(如果我错了,请纠正我)。

2 个答案:

答案 0 :(得分:1)

很久以前,我与NITE合作(我只使用Kinect v1),所以也许其他人可以提供更新的答案,但从我记忆中,这应该很容易实现。

只要通过ROS主题发布所有相关数据,就可以很容易地使用rosbag进行记录并随后播放。每个可以处理传感器实时数据的节点也可以对来自包文件的记录数据进行相同的处理。

您可能遇到的一个问题是,如果您记录kinect数据,那么包文件会很快变得非常大(几千兆字节)。如果您想在RAM很少的机器上编辑文件,这可能会有问题。如果您只想播放该文件或者您有足够的RAM,那么这不应该是一个问题。

答案 1 :(得分:1)

实际上,可以在任何深度图像流上执行NiTE2骨架跟踪。

参考: https://github.com/VIML/VirtualDeviceForOpenNI2/wiki/How-to-usehttps://github.com/VIML/VirtualDeviceForOpenNI2/wiki/About-PrimeSense-NiTE

使用此扩展,可以添加允许操纵深度流的每个像素的虚拟设备。然后,该设备可用于创建userTracker对象。只要提供了正确的设备名称,就可以进行骨架跟踪

  

\ OpenNI2 \ VirtualDevice \超高动力学

但请考虑使用限制:

  

NiTE仅允许与"授权硬件"

一起使用