kinect 传感器返回的深度值对应于与 xy 平面的真实世界 z 距离(以 mm 为单位)。到目前为止,我在最新的 sdk 中找不到任何返回 x 和 y 坐标类似的东西。这是在sdk中提供的吗?如果做不到这一点,那么计算 x 和 y 的好方法是什么?
问问题
4541 次
1 回答
6
您可以使用返回 SkeletonPoint 的 KinectSensor.MapDepthToSkeletonPoint 方法。示例代码可以是
using (DepthImageFrame depthimageFrame = e.OpenDepthImageFrame())
{
if (depthimageFrame == null)
{
return;
}
pixelData = new short[depthimageFrame.PixelDataLength];
depthimageFrame.CopyPixelDataTo(pixelData);
for (int x = 0; x < depthimageFrame.Width; x++)
{
for (int y = 0; y < depthimageFrame.Height; y++)
{
SkeletonPoint p = sensor.MapDepthToSkeletonPoint(DepthImageFormat.Resolution640x480Fps30, x, y, pixelData[x + depthimageFrame.Width * y]);
}
}
}
于 2012-06-20T19:26:54.473 回答