張妙維, 修 毅
(北京服裝學(xué)院 計(jì)算機(jī)信息中心, 北京 100029)
在三維服裝仿真人體變形過(guò)程中,人體軀干部分形態(tài)復(fù)雜,變化豐富,研究方法多樣。隨變形技術(shù)的更新和研究的深入,變形效果和交互效率得到提高。
目前,研究較多的一類(lèi)變形方法是通過(guò)掃描大量的人體信息建立人體模型庫(kù)[1],將新導(dǎo)入的人體關(guān)鍵信息與模型庫(kù)中的人體相匹配,將匹配度高的人體經(jīng)再次合成得到的人體用于新人體[2]。為使精確度和體型覆蓋度得到提升,這類(lèi)研究方法所需人體模型量大,隨著研究的展開(kāi),模型數(shù)量持續(xù)增多,過(guò)程繁瑣。另一類(lèi)研究較多的是特征驅(qū)動(dòng)變形:根據(jù)體型特征將人體分成多個(gè)特征區(qū)域,針對(duì)每個(gè)特征區(qū)域制定不同的約束和驅(qū)動(dòng)關(guān)系[3];多種變形方法共同驅(qū)動(dòng)復(fù)雜的人體變形,增加局部變形調(diào)整的靈活性,但變形效果常與實(shí)際人體體型規(guī)律不符[4]。
孫守遷等[5]提出的參數(shù)化人體建模方法中,對(duì)腰腹部的變形是基于計(jì)算機(jī)圖形學(xué)軸變形技術(shù),將人體模板剖成左右2個(gè)部分,并且使用徑向變形權(quán)重曲線來(lái)增加調(diào)整的靈活性。該方法建模速度快,但使用的3個(gè)人體模板均為標(biāo)準(zhǔn)人體模板,且變形之后的人體模板體型仍在標(biāo)準(zhǔn)體型內(nèi)。耿玉磊等[4]提出了多因素驅(qū)動(dòng)人體模型變形的方法,可對(duì)已有人體進(jìn)行快速變形。其中對(duì)腰圍的變型采用的是基于截面環(huán)的尺寸驅(qū)動(dòng)算法,這種算法使腰圍前后統(tǒng)一變形,變形之后的人體腰腹部突兀,不符合實(shí)際人體體型規(guī)律。
為得到符合實(shí)際人體體型規(guī)律的變形,引入一種左右剖面模型算法,該算法沿著肩線和體側(cè)線,橫跨人體左右將人體分為前后2部分剖面,可用于對(duì)前后2個(gè)部分的人體分別進(jìn)行變形。在人體解剖學(xué)里,將人體分成前后2個(gè)部分的平面,稱(chēng)為冠狀面,與鉛垂軸平行。由于本文引入的這種剖面是與人體相匹配的傾斜曲面,不滿足冠狀面的定義和性質(zhì),因此,本文給引入剖面新的定義,根據(jù)其橫貫人體左右的性質(zhì),稱(chēng)其為左右剖面。獲得三維服裝仿真人體左右剖面的主要流程包括:掃描并處理人體;獲取仿真人體用于構(gòu)造左右剖面的特征點(diǎn);確定用于構(gòu)造左右剖面的二次曲面方程;利用獲取的特征點(diǎn)的坐標(biāo)數(shù)據(jù)和確定的二次曲面方程,構(gòu)成非齊次線性方程組求解,獲得二次曲面系數(shù);求取左右剖面。
三維人體模型是數(shù)字化三維服裝造型與設(shè)計(jì)技術(shù)的基礎(chǔ),模擬出的人體要包含真實(shí)人體信息,對(duì)其進(jìn)一步處理時(shí)獲得的數(shù)據(jù)才有意義。本文采用三維激光儀,通過(guò)非接觸人體掃描技術(shù)掃描人體,獲得stl.格式的點(diǎn)云數(shù)據(jù)人體模型[6]。
通過(guò)掃描獲取的人體模型,原始數(shù)據(jù)處理量大,有干擾信息,因此,需要使用Geomagic Studio逆向建模工程軟件對(duì)掃描人體數(shù)據(jù)進(jìn)行拼合、簡(jiǎn)化、過(guò)濾、三角化等,進(jìn)行反復(fù)修剪、刪除、排除體外孤點(diǎn)、降噪、修補(bǔ)以及平滑處理得到可用于仿真的人體模型。
由于obj.文件格式簡(jiǎn)單、通用,對(duì)這種以純文本形式存儲(chǔ)了頂點(diǎn)、法線、紋理坐標(biāo)和材質(zhì)信息的模型使用起來(lái)方便。通過(guò)Geomagic Studio將處理過(guò)的掃描得到的stl.格式人體模型數(shù)據(jù)以obj.格式文件導(dǎo)出。在Visual Studio中,利用Csharp OpenGL圖形處理接口,搭建para 3D model仿真系統(tǒng),導(dǎo)入用于仿真的obj.格式的人體數(shù)據(jù),得到仿真人體如圖1所示。
圖1 仿真人體Fig.1 Simulation body
在該仿真系統(tǒng)中,利用射線求交法手動(dòng)標(biāo)識(shí)仿真人體上的點(diǎn),選擇肩線和體測(cè)線上明顯、固定、易測(cè)部位的一組點(diǎn)為特征點(diǎn)(包括側(cè)頸點(diǎn),肩端點(diǎn),前腋窩點(diǎn),胸圍、腰圍、臀圍分別與體側(cè)線的交點(diǎn))進(jìn)行標(biāo)識(shí),并獲取特征點(diǎn)三維坐標(biāo)數(shù)據(jù),特征點(diǎn)選取情況如圖2所示。
圖2 特征點(diǎn)的標(biāo)注Fig.2 Mark of feature points
在獲取了左右剖面特征點(diǎn)的三維坐標(biāo)數(shù)據(jù)x,y,z后,需對(duì)構(gòu)成左右剖面的曲面方程類(lèi)型進(jìn)行確定。由于獲取的特征點(diǎn)三維坐標(biāo)數(shù)據(jù)是確定的測(cè)量值,構(gòu)成左右剖面的曲面曲率變化平緩,引入二次曲面構(gòu)成人體左右剖面的模型為:
Ax2+By2+Cz2+Dxy+Exz+Fyz+
Gx+Hy+Iz+J=0
(1)
式中,A~J為從人體左右剖面二次曲面議程的各項(xiàng)系數(shù)。
從解析二次曲面方程[7]分析,如果將1組已知三維坐標(biāo)的點(diǎn)代入式(1)中,將得到一個(gè)多元一次齊次方程組。該方程組只有零解,無(wú)法求取二次曲面方程系數(shù)。
從人體結(jié)構(gòu)上分析,人體軀干傾斜度整體趨于平緩,仿真人體左右剖面上的三維坐標(biāo)x、y、z中,z坐標(biāo)對(duì)剖面影響最小,所以去掉z的二階項(xiàng),只保留一階項(xiàng),經(jīng)簡(jiǎn)化后得到二次曲面方程[8]為:
Ax2+By2+Cxy+Dx+Ey+F=z
(2)
將該方程作為左右剖面的模型。
使用特征點(diǎn)的三維坐標(biāo)數(shù)據(jù)和確定的二階曲面方程,構(gòu)成方程組求解方程系數(shù)[9]。將標(biāo)識(shí)的特征點(diǎn)(xi,yi,zi)(i=1,2,…,n)三維坐標(biāo)數(shù)據(jù)代入式(2)中,由于x、y、z值已知,多元二次曲面方程組構(gòu)成多元一次方程組,如式(3)所示:
(3)
為求解特征點(diǎn)列和方程組系數(shù)[10],將式(3)(n為特征點(diǎn)個(gè)數(shù))轉(zhuǎn)換為矩陣PX=S進(jìn)行求解,將每行的已知x、y、z值轉(zhuǎn)化為系數(shù)矩陣P,S為右邊值矩陣,X為反求系數(shù)的值,具體表示式為:
(4)
代入不同數(shù)量的特征點(diǎn)會(huì)導(dǎo)致系數(shù)值與方程個(gè)數(shù)出現(xiàn)以下幾種情況:
1)n=6,此時(shí)為定解方程組,利用矩陣除法X=S/P可得方程組有唯一解;
2)n<6,此時(shí)為奇異方程組,方程組有無(wú)數(shù)解;
3)n>6,此時(shí)為超定方程組,可用最小二乘法求得近似解。
在標(biāo)識(shí)特征點(diǎn)的過(guò)程中,獲取的三維坐標(biāo)值成對(duì)出現(xiàn),由于人體左右面對(duì)稱(chēng)使得左右對(duì)稱(chēng)特征點(diǎn)的x值互為相反數(shù),y、z相等。將左右對(duì)稱(chēng)的特征點(diǎn)代入二次曲面方程,并組成方程組時(shí),所有包含x奇次冪的項(xiàng)都將被抵消。此時(shí)式(3)的系數(shù)發(fā)生變化,求解的不確定因素增加,因此,選擇使用仿真人體一側(cè)的特征點(diǎn),即頸圍線的中心點(diǎn)和腰圍線的中心點(diǎn)作為新的特征點(diǎn)進(jìn)行標(biāo)識(shí),并用這些點(diǎn)的數(shù)據(jù)組成新的線性方程組求解。在仿真人體上重新取點(diǎn)結(jié)果如圖3所示。
圖3 特征點(diǎn)的重新標(biāo)注Fig.3 Re-mark of feature points.
選擇跨平臺(tái)、跨編程語(yǔ)言支持的OpenGL作為3-D繪圖的API進(jìn)行3-D仿真,使用面向?qū)ο笳Z(yǔ)言的C#語(yǔ)言在Visual Studio、Para 3D Model仿真系統(tǒng)中添加左右剖面的功能。
對(duì)指定的特征點(diǎn)進(jìn)行標(biāo)識(shí),將指定特征點(diǎn)的三維坐標(biāo)值中包含x、y項(xiàng)的值存入系數(shù)矩陣P中;z的值存放在等號(hào)右側(cè)P中;調(diào)用數(shù)學(xué)庫(kù)中的QR矩陣方法求解PX=S;求出系數(shù)A~F的值。
根據(jù)非齊次線性方程組的求解原理,求解二階曲面方程組成的方程組時(shí),當(dāng)n≥6時(shí)方程組有可用解。求解定解方程組、超定方程組獲得的二階曲面方程,呈現(xiàn)的是效果不同的曲面,因此,把求取左右剖面分成標(biāo)識(shí)的特征點(diǎn)數(shù)等于6和大于6的2種情況進(jìn)行分析。
對(duì)包含左右剖面的仿真人體進(jìn)行前、后、左、右觀察,當(dāng)特征點(diǎn)數(shù)為6時(shí),僅取最關(guān)鍵的特征點(diǎn)(側(cè)頸點(diǎn),肩端點(diǎn),胸圍、腰圍與體側(cè)線的交點(diǎn),頸圍線、腰圍線的中心點(diǎn)),剖面精確地經(jīng)過(guò)這些特征點(diǎn),效果良好,其結(jié)果如圖4所示。
圖4 標(biāo)識(shí)點(diǎn)為6的左右剖面Fig.4 Six marked feature points of left-right section. (a) Left view; (b) Right view
當(dāng)特征點(diǎn)個(gè)數(shù)為9時(shí),此時(shí)標(biāo)識(shí)的點(diǎn)包含人體關(guān)鍵部位的所有特征點(diǎn)(側(cè)頸點(diǎn),肩端點(diǎn),前腋窩點(diǎn),胸圍、胸下圍、腰圍、臀圍與體側(cè)線的交點(diǎn),頸圍線、臀圍線的中心點(diǎn)),其結(jié)果如圖5所示。
圖5 標(biāo)識(shí)點(diǎn)數(shù)為9的左右剖面Fig.5 Nine marked feature points of left-right section. (a)Left view; (b)Right view
圖6 局部細(xì)節(jié)對(duì)比Fig.6 Local detail contrasts.(a) Six points; (b) Nine points
標(biāo)識(shí)不同數(shù)量特征點(diǎn)生成的剖面局部細(xì)節(jié)對(duì)比如圖6所示。
由圖6可知:當(dāng)標(biāo)識(shí)點(diǎn)個(gè)數(shù)為6時(shí),剖面全部經(jīng)特征點(diǎn);標(biāo)識(shí)點(diǎn)個(gè)數(shù)為9時(shí)剖面大部分經(jīng)特征點(diǎn),部分靠近特征點(diǎn),滿足將人體分成前后2個(gè)部分的要求。
除對(duì)能表征人體測(cè)量基準(zhǔn)點(diǎn)和測(cè)量部位的關(guān)鍵點(diǎn)的標(biāo)識(shí),即對(duì)具有典型代表性的6個(gè)和9個(gè)特征點(diǎn)的標(biāo)識(shí)外,選取特征點(diǎn)個(gè)數(shù)為8、10、12、15進(jìn)行標(biāo)識(shí),結(jié)果如圖7所示。在圖7(a)~(d)所示4幅剖面展示圖中,隨標(biāo)識(shí)點(diǎn)的增多非特征點(diǎn)標(biāo)識(shí)的個(gè)數(shù)也隨之增加,剖面對(duì)肩線和體側(cè)線上一般點(diǎn)的標(biāo)識(shí)也具有適用性,可滿足將仿真人體很好地分成前后2個(gè)部分的要求。
圖7 標(biāo)識(shí)實(shí)例Fig.7 Mark of examples. (a) Eight points; (b) Ten points ; (c) Twelve points; (d) Fifteen points
在構(gòu)造空間曲面時(shí),經(jīng)常采用插值算法和擬合算法,但需要具有一組分布在曲面空間上的數(shù)據(jù)點(diǎn)作為這些算法的輸入數(shù)據(jù)。在構(gòu)造人體左右剖面時(shí),由于通過(guò)三維掃描只能獲取仿真人體表面點(diǎn)的數(shù)據(jù),僅已知仿真人體表面肩線和體測(cè)線上相關(guān)的特征點(diǎn),無(wú)法標(biāo)識(shí)體內(nèi)點(diǎn)并獲取點(diǎn)的三維坐標(biāo)信息進(jìn)行利用,因此,本文引入空間二次曲面方程作為左右剖面模型,再利用非齊次方程組求解,最終得到了二次曲面方程,構(gòu)造出左右剖面。
針對(duì)不同時(shí)期人體胖瘦脂肪分布規(guī)律,將標(biāo)準(zhǔn)人體變形為特殊體型時(shí),人體前后需要進(jìn)行不同規(guī)律變形的目的,生成人體左右變形的基準(zhǔn)剖面,通過(guò)對(duì)肩線和體側(cè)線上點(diǎn)的標(biāo)識(shí)以及形成非齊次線性方程組來(lái)求取曲面,該過(guò)程簡(jiǎn)捷、高效。
監(jiān)測(cè)輸液正常的關(guān)鍵指標(biāo)之一: 輸液液滴的狀態(tài),液滴的快慢代表著輸液的不同狀態(tài)。圖2為液滴信號(hào)監(jiān)測(cè)示意圖。紅外對(duì)管是檢測(cè)輸液液滴的關(guān)鍵器件。圖3是實(shí)現(xiàn)輸液液滴監(jiān)測(cè)的具體實(shí)現(xiàn)電路。
在后續(xù)研究中發(fā)現(xiàn),應(yīng)用左右剖面技術(shù)不僅對(duì)仿真人體前后區(qū)別變形具有良好可用性,還適用于作為服裝造型前后部分的基準(zhǔn),對(duì)前后相連的統(tǒng)一圍線等的分別獲取,三維服裝到二維平面展平中的中間媒介,三維仿真服裝通過(guò)軸旋轉(zhuǎn)方式映射到左右剖面上等研究與應(yīng)用。這些應(yīng)用為三維服裝CAD仿真人體的變形,以及三維服裝到二維平面的展平的研究提供了新的思路。
FZXB
參考文獻(xiàn):
[1] WANG C C L.Parameterization and parametric design of mannequins [J]. Computer-Aided Design, 2005, 37(1):83-98.
[2] CHU C H, TSAI Y T, WANG C C L, et al. Exemplar-based statistical model for semantic parametric design of human body[J]. Computers in Industry, 2010, 61(6):541-549.
[3] 路寧,寧濤,唐榮錫,等.自由變形方法及其在建立尺寸驅(qū)動(dòng)人體模型中的應(yīng)用[J]. 工程圖形學(xué)報(bào),2004(1):76-83.
LU Ning, NING Tao, TANG Rongxi, et al. Dirichlet free-form deformations and their applicationtion dimension driven body model[J]. Journal of Engineering Graphics, 2004(1): 76-83.
[4] 耿玉磊,陸國(guó)棟,鄧衛(wèi)燕,等. 面向服裝CAD的多因素驅(qū)動(dòng)人體模型變形技術(shù)研究[J]. 中國(guó)圖象圖形學(xué)報(bào),2009,14(11):2349-2355.
GENG Yulei, LU Guodong, DENG Weiyan, et al.
[5] 孫守遷,徐愛(ài)國(guó). 三維服裝仿真中的參數(shù)化人體建模技術(shù)[J]. 紡織學(xué)報(bào),2007,28(12):89-93.
SUN Shouqian, XU Aiguo.Study on parameterized mannequin modeling in 3-D garment simulation[J]. Journal of Textile Research, 2007, 28(12): 89-93.
[6] 陳亮,趙曙光,張麗娟,等. 虛擬三維服裝展示的發(fā)展歷史與研究熱點(diǎn)[J]. 紡織學(xué)報(bào),2011,32(10):153-160.
CHEN Liang, ZHAO Shuguang, ZHANG Lijuan, et al. History and Research hot spot of three-dimensional virtual garment display[J]. Journal of Textile Research, 2011, 32(10): 153-160.
[7] 李二濤,張國(guó)煊,曾虹. 基于最小二乘的曲面擬合算法研究[J]. 杭州電子科技大學(xué)學(xué)報(bào),2009,29(2):48-51.
LI Ertao, ZHANG Guoxuan, ZENG Hong.Algorithm of surface fitting research based on least-squares me-thods[J]. Journal of Hangzhou Dianzi University, 2009, 29(2):48-51.
[8] 霍曉程,李小平. 用最小二乘法擬合曲面方程[J]. 赤峰學(xué)院學(xué)報(bào)(自然科學(xué)版),2009,25(6):11-13.
HUO Xiaocheng, LI Xiaoping.Using least squares fitting surface equation[J].Journal of Chifeng Univer-sity (Natural Science Edition),2009, 25(6):11-13.
[9] 張文信,黃陽(yáng),潘衛(wèi)國(guó). 反求工程的一種曲面插值算法[J]. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2008,21(5):25-27.
ZHANG Wenxin, HUANG Yang, PAN Weiguo. Palletizing robot control system design and implementation[J].Development & Innovation of Machinery & Electrical Products,2008, 21(5):25-27.
[10] 戴中林. 多元線性不定方程的矩陣解法[J]. 四川師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2001,22(3):270-273.
DAI Zhonglin.Solution of the multivariate linear indeterminate equation by a matrix[J].Journal of Sichuan Teachers College (Natural Science Edition),2001,22(3):270-273.