简体   繁体   English

从kinect的深度数据获取点云

[英]Get point cloud from kinect's depth data

I am new to Kinect.. I wanted to know how is it possible to get point cloud from kinect's depth data. 我是Kinect的新手。我想知道如何从kinect的深度数据中获取点云。 I have tried getting the depth pixels and colorizing the near pixels based on depth. 我尝试获取深度像素并根据深度为附近的像素着色。 Now, my requirement is to get a 3d map based on the depth data. 现在,我的要求是基于深度数据获取3d地图。 So, I guess first I need to have the point cloud. 所以,我想首先我需要点云。 How should I proceed? 我应该如何进行?

I never used kinect, but given the input is 2D pixels with depth data. 我从未使用过kinect,但考虑到输入是带有深度数据的2D像素。 You need to take the pixels and Unproject them to world space (assuming your already setup your virtual camera, view and projection matrix). 您需要获取像素并将其取消投影到世界空间(假设您已经设置了虚拟相机,视图和投影矩阵)。 Given that you have the depth for each will give you the actual Z world position. 假设您有足够的深度,就会给您实际的Z世界位置。 Keep in mind that those 3D points will only be the visible pionts to the kinect sensor. 请记住,这些3D点将仅是kinect传感器的可见点。

If you want to convert the 3D point clouds into a 3D mesh, you need to find the convex hull of the points and then triangulate it. 如果要将3D点云转换为3D网格,则需要找到这些点的凸包,然后对其进行三角剖分。

I would see my question about getting a point cloud of my body. 我会看到有关获取身体点云的问题 Especially davidbates answer, as it describes how exactly to create the effect with depth data. 特别是davidbates回答,因为它描述了如何精确地使用深度数据创建效果。 If you want code, I would see this website which I have used before to create point clouds. 如果你想要的代码,我会看到这个网站 ,我以前用来创建点云。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM