Ask Your Question

Revision history [back]

In general you can't expect to have perfect synchronization between RGB and depth for the Kinect. From the openni_camera wiki page:

Synchronization

Other than the Primesense devices, the Kinect does not support hardware synchronization. Thus the time points where the RGB image and the depth image are captured may be up to ~16ms away from each other. For all devices we use a Approximatetimesynchronizer to generate the point clouds /camera/rgb/points. For Primesense devices the hardware synchronization is turned on automatically if both streams are used (subscribing to image + depth).

Note that /camera/depth/image and /camera/depth/points both contain essentially the same information--the former is the depth of each point and the latter is the point cloud derived from that depth data. Subscribing to both of them simultaneously is probably overkill.