我在这个网站上搜索了很多,研究了类似的问题,并使用了给出的答案代码,但没有一个有效。所以我不得不问这个问题:
我有一个点云(一组 XYZ 用于 3D 表面)。它们实际上属于 3D 人体表面(胸部和背部)。我想在 MATLAB 中使用这些点制作 3D 曲面。我尝试了很多方法,但不幸的是没有一个有效。
如果有人能在这件事上为我提供一些帮助,我将不胜感激。谢谢你
实际上我自己得到了这个问题的答案!但我对此并不完全确定。
我必须定义这些点如何通过面矩阵连接。像这样 :
Faces = [ 1 2 6 ; 1 2 4 ; 1 3 9 ; 2 6 8 ; ... ] ;
这意味着例如点 1、2、6 作为面相互连接。定义面矩阵后,我必须使用补丁函数根据点(顶点)矩阵和给定的面矩阵制作一个 3D 表面。
这种事情的示例代码可能是这样的:
patch('Vertices', P, 'Faces', t);
或者
patch('Faces', t, 'Vertices', P, 'FaceColor', [1 0.75 0.65], 'EdgeColor', 'k', 'FaceAlpha', 1.0);
但是,我现在面临一个新问题,生成人脸矩阵!
有人对此有任何想法吗?
谢谢