论文部分内容阅读
本课题应用德国Techmath公司的Vitus三维人体激光扫描仪,成功的提取了真实人体的三维数据,并将三维人体表面的几十万个小三角形顶点坐标转化为能够被MATLAB处理的矩阵形式,并应用网格小平面法构造了三维人体模型,使得三维人体能够脱离三维人体扫描仪的显示环境在普通的PC机上得以显示。同时,由于Vitus三维人体扫描仪数据量过于庞大,使得显示加载及动作(如旋转动作)的执行速度变得异常缓慢,因此,本文对原有的三角网格进行了压缩处理,实现了三角网格的优化,使人体上的全部三角网格数量减少到了原来的20%,并仍能满足光滑显示人体的要求,而在显示速度和旋转处理速度等方面都有了大幅度的提高。在建立了真实感三维人体的基础上,本文提取了控制服装款式的关键型值点,并采用双三次B样条曲面建立了三维服装模型。在编程方法的选择上,本文利用MATLAB6.5强大的三维图形显示及处理能力作为三维人体及服装的显示窗口,并编制了相应的算法。虽然MATLAB在矩阵运算及三维图形显示方面具有强大的优势,但其编写GUI的功能相对于其它高级语言而言却显得比较薄弱,而美观大方的系统界面又是评判一个软件优劣的重要因素,因此,本文采用VB6.0语言设计了系统界面,利用ActiveX技术实现了VB和MATLAB的混合编程,使开发效率大幅度提高,可以方便的改变背景色和衣片颜色,对选定部位局部放大或缩小,显示三维人体的线框图及表面图,绕x,y,z轴自动旋转一周,任意角度旋转等功能。
本论文采用Vitus三维人体扫描仪提取了三维人体数据,在完成了三维人体数据处理的基础上,对原始的三角网格进行了压缩处理,从而实现了三维人体的真实感显示。同时,在已经建立好的三维人体模型的基础上,本论文应用双三次B样条曲面完成了三维服装的建模。