顶点未合并(Kinect Furion输出) [英] Vertices not merged (output from Kinect Furion)

查看:56
本文介绍了顶点未合并(Kinect Furion输出)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我现在遇到了一个重大问题。我正在使用kinect融合来捕获3D场景并将其输出为.OBJ文件。

I have a major problem right now. I was using the kinect fusion to capture a 3D scene and output it as an .OBJ file.

该文件的输出如下所示:

The output of the file looks something like this:

v 123 123 123
$
v 123 123 123

v 123 123 123

vn 321 321 321

vn 321 321 321

vn 321 321 321

f 1 // 1 2 // 2 3 // 3

v 123 123 123
v 123 123 123
v 123 123 123
vn 321 321 321
vn 321 321 321
vn 321 321 321
f 1//1 2//2 3//3

其中v是顶点,vn是正常的,f是面部。 3个顶点组成一个面,因此面的数量是顶点数的1/3。但问题是kinect的输出并没有将顶点合并在一起。所以在我将它导入maya
并将它们合并在一起后,顶点和顶点法线的数量会以某种方式变得不同!

Where v is the vertice, vn is normal, and f is the face. 3 vertices makes up a face, so the number of face is exacely 1/3 the number of vertices. But the problem is the output from kinect doesnt merge the vertices together. So after i import it into maya and merge them together, the number of vertice and vertice normals somehow become different!

合并后的顶点数:52837

合并后正常的顶点数:299997

合并后的面数:99999

Number of vertice after merge: 52837
Number of vertice normal after merge: 299997
Number of face after merge: 99999

这怎么可能!?不应该每个顶点只有1个顶点正常吗?为什么比顶点更正常?我编写的代码只有遵循该结构才能工作。另一种方法是不将顶点合并在一起,但将来可能会给我造成
的问题。 

How is that possible!? Shouldn't each vertice only have 1 vertice normal? Why is there more normal than vertices? The code that i wrote can only work if it follows that structure. Another way is to not merge the vertices together, but it may cause problems for me in the future. 

希望有人可以帮助我T_T

Hope someone can help me T_T

推荐答案

Kinect Fusion资源管理器示例中的导出网格生成一个开放网格,而某些3D应用程序不喜欢这样。可能存在需要填充空洞的情况。如果您需要在管道中执行此操作,则可以尝试将其他逻辑应用于导出网格
函数。理想情况下,您希望使用其他程序来"清理"网格,因此它可以导入到3D应用程序。我们通常使用MeshLab,但其他人可以推荐他们的工作流程作为其他
选项。

The exported mesh from the Kinect Fusion explorer sample produces an open mesh and some 3D application don't like that. There may be instances where there are also holes that need to be filled in. You can try to apply additionally logic to the export mesh function if you need this done as part of your pipeline. Ideally your will want to use another program to "clean-up" the mesh so it can be imported into a 3D application. We typically use MeshLab, but other can recommend their workflows as other options.


这篇关于顶点未合并(Kinect Furion输出)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆