Graphics 修复错误的3D头部扫描

Graphics 修复错误的3D头部扫描,graphics,xna,directx,3d,Graphics,Xna,Directx,3d,我面临的问题如下。 我有很多3D头部扫描,其中一些是正确的,就像附件中的例子一样,但在很多情况下,很容易看到被扫描的人的头部没有与机器的前部完全对齐,因此纹理和深度贴图的一侧似乎更宽。确切的原因是,一侧从后面取得更多,如果你看耳朵,它很容易看出来 幸运的是,当我从柱面坐标转到carthesian坐标并使用XNA渲染人脸时,人脸是对称的 现在的问题是,我希望所有头部的纹理和深度贴图都像正确的一样漂亮和对称,因为以后我想对齐它们并执行PCA 我现在的想法是,我可以在所有顶点之间对曲面进行插值,并从这

我面临的问题如下。 我有很多3D头部扫描,其中一些是正确的,就像附件中的例子一样,但在很多情况下,很容易看到被扫描的人的头部没有与机器的前部完全对齐,因此纹理和深度贴图的一侧似乎更宽。确切的原因是,一侧从后面取得更多,如果你看耳朵,它很容易看出来

幸运的是,当我从柱面坐标转到carthesian坐标并使用XNA渲染人脸时,人脸是对称的

现在的问题是,我希望所有头部的纹理和深度贴图都像正确的一样漂亮和对称,因为以后我想对齐它们并执行PCA

我现在的想法是,我可以在所有顶点之间对曲面进行插值,并从这些插值中获得彼此距离相等的新顶点。 这个解决方案似乎需要做很多工作,可能是有点过头了。 也许还有其他方法,比如从DirectX/XNA获取插值数据,但无论如何都必须在某个点进行计算

我将非常感谢有帮助的回答

正确的例子是: 错误示例:

也许可以使用一些坐标变换在一定程度上修复一些不正确的扫描,但您必须猜测对齐的不正确性,并且可能无法自动执行

但是,除非原始主体已死亡或无法使用;重做扫描可能要容易得多


进行另一次扫描很可能会更快,并且不会像转换坏扫描那样降低质量。错误样本上的鼻子似乎遮挡了鼻子的侧面,没有任何花哨的算法能够修复丢失的数据。

很抱歉这么长时间没有回答。unfotunaelly我没有访问进行这些扫描的机器的权限,因此无法重新进行扫描。我最后做的是坐标变换,也就是说,我移动了X轴和Z轴上柱坐标的中心,并插值了缺失的数据。这些图像并不完美,但比以前更好。