很抱歉,如果标题让你感到困惑。我搜索了很多,但没有人可以帮忙。
假设我有一个ply文件,我可以提取顶点'位置,法线和颜色。 face_vertices_index,即数组是N乘3,每行形成一个面(三角形),行中的每个值都是顶点的索引。
所以我的问题是如何获得脸部的位置/正常/颜色。我知道循环将有助于解决这个问题。但是如何以有效的方式做到这一点。
假设顶点数大于1e9且面数更多。
更新
例如,获取面部位置:
face_vertices_index
就是一些数组
array([array([0,1,2], dtype=int32), array([1,0,2], dtype=int32)], dtype=object)
这是形成三角形的顶点的索引。
vertices = np.array([[-1.033,-0.794,0.262 ],[-1.038,-0.786,0.284],[-1.034,-0.786,0.272]])
每个顶点位置。
我可以让face_posi获得1比3的数组。
喜欢face_posi[i] = np.mean(vertices[face_vertices_index[i]],axis=0)