首页 > 解决方案 > 如何在不同的不等号集合上应用相同的变换。顶点数

问题描述

我想使用代码(不在meshlab或blender中)将一个3D网格的转换应用到另一个网格。就我而言,我有一个 3D 人脸模型和一个 3D 面罩(带有顶点和人脸信息)。

3D人脸模型 在此处输入图像描述

3D面罩 在此处输入图像描述

我的方法如下:

  1. 首先,从 3D 蒙版网格 (VA) 中获取所有顶点的 ID
  2. 从 3D 面模型网格 (VB) 中获取所有顶点的 ID
  3. 找到对应顶点以在 (VB) 上应用变换
  4. 找到获得相同形状所需的变换

现在,当总数没有时,找到对应顶点的最佳方法是什么。两个网格中的顶点数不相等。

实现这一目标的正确方法是什么?

标签: pythonopengl3dface

解决方案


对于 VA 中的每个顶点 v,您不能使用最小成对距离简单地找到 VB 中最近的顶点 v' 吗?当然 VA 和 VB 首先需要在同一个坐标系中。


推荐阅读