meshutil.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:DenseHumanBodyCorrespondences 作者: halimacc 项目源码 文件源码
def furthest_point_sample(vertices, faces, N, K):
    num_vertices = vertices.shape[0]
    center_indices = np.random.choice(num_vertices, N, replace=False)
    sqr_dists = 1e10 * np.ones(num_vertices)
    vertex_as = np.zeros(num_vertices, dtype=np.int32)
    for i in range(N):
        new_sqr_dists = np.sum(np.square(vertices - vertices[center_indices[i]]), 1)
        update_mask = new_sqr_dists < sqr_dists
        sqr_dists[update_mask] = new_sqr_dists[update_mask]
        vertex_as[update_mask] = i
        next_center = np.argmax(sqr_dists)
        if K - 1 <= i < N - 1:
            center_indices[i + 1] = next_center

    centers = vertices[center_indices]
    face_centers = np.mean(vertices[faces], 1)
    sqr_dists = sqr_dist(centers, face_centers)
    face_as = np.argmin(sqr_dists, 1)
    return center_indices, vertex_as, face_as
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号