c++ - 如何逐步组合 3d 网格

标签 c++ 3d kinect mesh

我正在使用 xbox kinect 作为我的传感器,我正在尝试从中创建一个 3d map 。目前我能够从它的深度传感器生成点云。一旦我们得到点云,就可以将其转换为三角形网格。问题是我们将获得多个 3d 网格,我们需要以某种方式检测所有网格之间的重叠并创建一个单独的网格。

如何检测重叠并将所有网格合并为一个网格?我可以使用好的算法吗?

最佳答案

我的建议是将此贴图转换为渐变贴图。 哪里有高梯度像素,就说明它是边界。

然后,按照您之前计算的边界将 map 分开。

现在你应该在对象之间有很好的分离。

最后,您可以在分离的 map 上应用您的网格算法。

(希望我理解你的意思)

关于c++ - 如何逐步组合 3d 网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34578965/

相关文章:

c++ - 如何编译适用于旧版 Linux 发行版的二进制文件?

c++ - 演示文稿错误 :Word Reversal

c - 如何显示这些小三角形或快速识别它们?

java - 计算一个简单三角形的每面法线

unity-game-engine - 使用 Kinect 和 OpenNI 在 Unity 中检测手势

java - 如何在 Linux 中为 OpenNI 编译和运行 java 文件

C++ 死亡钻石

c++ - 类似 map 的容器

java - 计算 3D 空间中相对于另一个点的点

c++ - cv::circle 的奇怪行为