Kinect Point云曲线墙

use*_*198 4 3d point-clouds kinect

在我的Kinect项目中,我正在尝试使用Kinect传感器创建点云.当显示3D点时,我会得到一个倾斜的模型,其中墙壁和地板是弯曲的.

编辑:我正在使用微软的Kinect SDK.这个点云是在距离墙壁一两英尺处传感器的情况下产生的.

Kinect示例

use*_*198 5

我找到了答案.我正在使用深度图像,这不是真实的世界坐标.我使用Kinect SDK中的CoordinateMapper类将深度图像转换为SkeletonPoints,它们是真实世界的坐标.

它会是这样的:

using (DepthImageFrame depthFrame = e.OpenDepthImageFrame()) {
  DepthImagePixel[] depth = new DepthImagePixel[depthFrame.PixelDataLength];
  SkeletonPoint[] realPoints = new SkeletonPoint[depth.Length];

  depthFrame.CopyDepthImagePixelDataTo(depth);

  CoordinateMapper mapper = new CoordinateMapper(sensor);
  mapper.MapDepthFrameToSkeletonFrame(DEPTH_FORMAT, depth, realPoints);
}
Run Code Online (Sandbox Code Playgroud)