在2D网格上从点云创建网格

西莱克斯

我正在使用新的Kinect v2,并且正在获取Kinect的深度图。得到深度图后,我将深度数据从深度空间转换为相机空间。据我所知,通过将每个像素的所有X,Y坐标转换为Camera Space +将深度值添加为Z坐标(Kinect还提供了以毫米为单位的深度值,因此它也转换为保持米)。因此,点云实际上位于使用深度值扩展的2D网格上。可视化也证实了这一点,因为很容易注意到由于上述对话,这些点在网格中是有序的。

为了进行可视化,我使用的是OpenGL的旧方式(glBegin(...)和glEnd())。我想在这些点之外创建一个网格。我可以用GL_TRIANGLES做到这一点,但是后来我有很多重复的顶点和边。因此,我认为我应该使用GL_TRIANGLE_STRIP创建更好的三角剖分,但是我被困在这里,因为我无法提出一种可以通过2D网格传递给GL_TRIANGLE_STRIP的好的算法,因此它创建了一个表面不错。

问题:

  • 对于每个三角形的顶点,我正在检查Z坐标。如果超过某个阈值,我将忽略三角形=>,这可能会在2D网格中产生孔。

  • 一些深度值是NaN,因为Kinect无法“看到”任何东西(例如,对象太远或太近)=>这还会在2D网格中创建孔。

有人建议解决该问题的最佳方法是什么?

深度冻结

如果能够使用点云库,则可以使用类pcl :: OrganizedFastMesh <PointInT>。

http://docs.pointclouds.org/trunk/classpcl_1_1_organized_fast_mesh.html

我用它对完整的深度框架进行三角测量。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在2D网格上从点云创建网格

来自分类Dev

在网格上对齐点云

来自分类Dev

numpy高效的方法来围绕点创建网格

来自分类Dev

Algorthim在两组点之间创建网格

来自分类Dev

在 Paraview 中从单元格和点创建网格

来自分类Dev

opencl上的2D网格块

来自分类Dev

Python将随机浮点数舍入到2D均匀网格网格上的最近点

来自分类Dev

使用UIImageview创建网格

来自分类Dev

创建网格的可视模板

来自分类Dev

JavaScript公式创建网格

来自分类常见问题

从2D网格上的点向外遍历的好算法是什么?

来自分类Dev

从2D网格上的点向外遍历的好算法是什么?

来自分类Dev

使用扩展的欧几里得算法在2D网格上找到线段与点的交点数

来自分类Dev

如何使用Java在png图像上创建网格图?

来自分类Dev

如何在 Xamarin Forms 中的按钮上创建网格

来自分类Dev

在2D函数的网格点上进行多处理

来自分类Dev

随机分布网格点处的2D插值

来自分类Dev

从点之间的距离重建2d网格的任何算法

来自分类Dev

从3D阵列创建网格图

来自分类Dev

在Matlab中创建2D圆形网格

来自分类Dev

在2D阵列网格(JAVA)上绘制圆

来自分类Dev

绘图画布上的2D阵列网格

来自分类Dev

在2D网格上找到8个邻居的节点

来自分类Dev

在锯齿状2D网格上向外螺旋

来自分类Dev

p5js mousePressed在2D网格上

来自分类Dev

在Julia中的常规2D网格上绘制值

来自分类Dev

为Vuforia(Java)创建网格

来自分类Dev

为PHP查询创建网格视图

来自分类Dev

使用jQuery快速创建网格