从不同的立方深度图创建3D网格

时间:2018-09-15 16:00:10

标签: c++ mesh surface depth-buffer

我设法分别创建了每个网格,但是仍然存在一些问题,除了我使用的是32位浮点深度图之外,我猜它们是从精确性中得出的:

enter image description here

我在立方面连接的地方也有一些小问题。

我的实现可能太幼稚了,我只是在使用:

zVal = 0.5f;
xVal = ((float)x / (float)imageWidth ) - 0.5f;
yVal = ((float)y / (float)imageHeight ) - 0.5f;
distance = sqrt(xVal*xVal + yVal*yVal + zVal*zVal);
vertexPos.x = xVal * imageValue / distance;
vertexPos.y = yVal * imageValue / distance;
vertexPos.z = zVal * imageValue / distance;

(我知道上面的代码并不完整,但这不是问题的主题,但是如果您有任何提示,欢迎您!)

我对多维数据集的每个面进行此处理,并对每个多维数据集面应用所需的转换,并对每个多维数据集贴图进行迭代(所示图像仅使用一个多维数据集贴图)

好,现在我有了顶点,这是我的问题:

  • 是否有已知的方法来删除低频率的详细信息?我的意思是使平面更“平坦”
  • 有没有已知的方法可以删除该平面区域上的顶点以保存不必要的数据?
  • 有没有建议从点云创建曲面?我尝试过http://www.cs.jhu.edu/~misha/Code/PoissonRecon/Version10.02/,结果是可以接受的,但不是最佳的。 enter image description here

提前谢谢

0 个答案:

没有答案