我有一个3D表面(如锥体)。它以轮廓的形式投影到二维平面图上,这意味着不同的Z在2D平面上会有不同的线条。问题来自轮廓,如何通过插值来恢复3D表面?我们只知道不同控制线之间的z差异。三维表面重建算法
Q
三维表面重建算法
4
A
回答
7
您提到的“轮廓”的技术术语是“iso-lines”。
给定一组iso等值线,您首先需要用3D构建一个点云(只是3D空间中的点集合)。你分两步做。首先通过以均匀的间隔对每条等值线进行采样,得到二维点,然后以合适的高度将点提高。
以均匀的间隔对一条线进行采样可以很容易地通过追踪它到达哪里去。你可以通过从最外面的一行开始,逐行地向内侧追踪这些线,去除你追踪的每一行并跟踪你追踪到的行数,从而知道一条线的高度。
当然,您需要事先知道线条之间的高度差以及最外线(或可用作参考的任何其他线)的高度是多少?
一旦您拥有3D点云可以使用任何一种表面重建算法。例如This company就是一个应用程序,它可以做到这一点,你可以从他们的网站上下载一个命令行演示程序,这个演示程序最多可以运行30,000个点。
2
如果你的点位于z = f(x,y)或者你的形状是凸的,在这种情况下,表面重构算法会浪费时间。
对于z = F(X,y)是仅使用 x中的简单的解决方案
- Delaunay三角剖分,y坐标
- 情节与以前的三角测量的表面上,此时使用ž太。工作已经完成!
你的形状是凸形的使用convhull算法
你的形状是凹的用途: http://www.advancedmcode.org/surface-recostruction-from-scattered-points-cloud-mycrust-robust.html
相关问题
- 1. 面部三维重建
- 2. 从二维图像算法重建三维图像
- 3. 计算三维网格的表面积
- 4. 三维表面情节
- 5. 三维奇偶校验码的算法?
- 6. Dijkstra在三维阵列上的算法
- 7. Bresenham的三维圆形算法?
- 8. 二维重组算法
- 9. 通过保留点位置实现三维曲面重建
- 10. 立体视觉三维重建 - 理论
- 11. 三维建模问题 - 重访
- 12. 理解三维表面曲线
- 13. 创建从熊猫三维表面光滑情节数据帧
- 14. 将二维图像转换为三维图像的算法
- 15. 三维投影到二维XY平面
- 16. 组织点云的防水表面重建算法
- 17. MATLAB三维曲面图
- 18. R:三维曲面图
- 19. 如何在表面网格中创建多边形或创建三角形等值面创建算法
- 20. 算法来计算两个点之间的最短路径的三维的表面上啮合
- 21. Java三重DES算法填充模式
- 22. C中的三重DES算法?
- 23. 测试三维点是否在三维多面体内
- 24. 创建三维位置
- 25. 在ActionScript中创建三维坐标系加上三维矢量?
- 26. 三维图表与Jfreechart
- 27. Excel宏三维图表
- 28. Pyplot三维散点:在前面的重叠点的点
- 29. 三维Delauny网格三角剖分算法的输出是什么?
- 30. 帮助创建三元/三角形绘图图形的算法