王 婷, 顧冰菲,2,3
(1. 浙江理工大學 服裝學院, 浙江 杭州 310018; 2. 浙江省服裝工程技術研究中心, 浙江 杭州 310018;3. 絲綢文化傳承與產品設計數字化技術文化和旅游部重點實驗室, 浙江 杭州 310018)
隨著互聯網技術的不斷進步與普及,服裝電子商務迅猛發展,成為提升傳統服裝品牌業績的關鍵動力之一。由于消費者在線購買服裝時,無法知曉試穿效果,如何購買到合體的服裝已成為廣大消費者在網購服裝時遇到的重要問題。探索如何僅基于人體正側面照片構建三維模型是十分必要的,不僅可幫助消費者買到合體的服裝,還可推進服裝電子商務的發展。
基于人體參數的三維建模技術在計算機輔助服裝設計、服裝個性化定制和虛擬試衣等多個領域中已得到廣泛探索與應用,目前常見的方法有線框建模、曲面建模、實體建模、參數化建模等[1-2]。Heekyung等[3]首先生成基于高度、寬度、深度和長度的二維圖像,然后利用多邊形技術對具有代表性的虛擬物體進行建模。Li等[4]利用人體測量數據對三維模型進行重建,然后用特征曲線網的形狀約束對其進行進一步優化。Shin等[5]建立了三維人體模型形狀變換的回歸方程,克服了圍度尺寸變化不能反映截面形狀變化的問題。人體尺寸數據是構建三維人體模型的基礎,盡管三維人體測量儀已被廣泛研究與應用[6],但復雜的操作、昂貴的價格和龐大的體積阻礙了其推廣使用,所以研究快捷、方便、可實現遠程人體測量的方法很有必要。為了滿足這種需求,相關學者開發了一種基于數字圖像的二維人體尺寸測量系統[7-8]。如Senanayake等[9]使用啟發式算法在人體輪廓上尋找關鍵位置以測量人體尺寸。馬黎[10]提出基于人體比例的局部輪廓人體測量法,在局部輪廓內提取所需特征點[11]。除此之外,基于二維尺寸測量的個性化人體模型自動生成研究也逐漸成為熱點[12-13]。師樂[14]提出在人體特征區域內進行局部像素掃描的人體尺寸測量和參數化建模方法。王力[15]提出一種基于Freeman鏈碼和人體比例關系的特征點提取方法,并基于Maya軟件和人體輪廓進行三維建模。此方法將二維圖像數據轉化為三維空間數據,具有成本低、應用范圍廣等優勢,然而如何快速準確地獲得人體關鍵尺寸數據,從而生成不同外形的三維人體模型仍是研究的重點與難點。
本文研究以人體正側面照片為基礎,以“坐標點—截面曲線—人體表面”為三維建模的基本思路,結合二維尺寸提取技術、截面曲線建立規則和三維人體建模技術,探討個體化頸肩部三維模型構建方法。首先借助三維人體點云數據確定出與頸肩部形態相關的8個特征截面層,并提出角度半徑的定義來建立曲線形態規則。然后以人體正側面照片為基礎提取曲線形態規則所需的人體參數,結合二維人體尺寸提取技術和曲面建模技術實現頸肩部三維模型的構建,為虛擬試衣、服裝遠程定制提供可能。
本文研究以202名身高在154~172 cm之間,體重在40~64 kg之間的18~25歲在校女大學生為實驗對象。表1示出實驗對象頸肩部的基本尺寸信息。

表1 實驗對象基本尺寸信息
通常情況下,樣本量越大,所測數據越精確,置信度越高,應用價值越高;樣本量越小,所測數據越粗略,置信度越低,應用價值越低[16]。合理的樣本容量既可確保研究的可靠性與準確度,還能減少對人力、物力等資源的浪費。樣本量n的計算公式如下:

通??茖W研究中置信水平為95%,相對誤差的取值范圍為1%~4%,即α=0.05,μα=1.96,同時為減小誤差,A取1%,計算結果如表2所示。結果顯示,以頸圍為參考時,所需樣本量最大,為176人。所以本文研究的樣本量最小為176,實際樣本量為202,滿足需求。
1.3.1 三維人體測量
本文研究采用美國[TC]2三維人體掃描儀獲取實驗對象的三維點云數據。為減小測量著裝及站立姿勢對所測數據的影響,要求被試者身穿合體淺色服裝,頭戴淺色帽子,不能佩戴眼鏡、手表、耳環等飾品。嚴格按照美國[TC]2三維人體測量系統規定的測量姿勢,測量時目視前方,保持正常呼吸。

表2 樣本量的確定
1.3.2 照片測量法
本文研究使用智能手機采集實驗對象的正面和側面照片。被測者站在黑色拍攝背景內標記的位置,保持直立靜止,目視前方。拍攝正面照片時要求胳膊略彎曲抬起,以便識別到腋下點;拍攝側面照片要求雙手貼于腰側,不可遮擋人體前腹或后腰部分,拍攝姿勢如圖1所示。

圖1 拍攝姿勢示意圖
特征截面層是指人體特征部位的截面層,是人體建模、服裝結構設計或款式設計的關鍵參考部位。頸肩部作為連接頭和手臂的部位,是上衣的主要支撐部位,包含4個特征點,即頸點、側頸點、肩點、腋下點。根據特征點可確定出對應的特征截面曲線,即頸部(L1)、側頸部(L2)、肩部(L3)、腋下(L4)。根據已有4個截面層的高度差值,應用平均分層的方法,提取頸部(L1)與側頸部(L2)的中間層為中頸部(L5)、側頸部(L2)與肩部(L3)的中間層為中側頸部(L6);但由于肩部(L3)和腋下(L4)截面層之間的間距比較大,為使建立的模型更能符合真實人體體型,再等間距提取2層,分別為中肩部(L7)、中腋部(L8)。這8個截面層的位置確定如圖2所示。各層之間的高度關系如下:
式中:HLi(i=1,2,…,8)為每一層至腳底的高度值。

圖2 頸肩部截面層確定
本文研究截取人體點云數據中頸肩部的8層特征截面曲線,在提取橫截面時,同時提取了該截面高度層上下1 mm內的點,導致數據點過多且散亂無序,因此需對提取的點云數據進行簡化處理并保存,以便后續分析。
在三維人體掃描過程中,由于人體的細微晃動或站姿的影響,難免會導致特征截面層與系統自定義的直角坐標系有一定偏差,為了更好地建立截面曲線,需對獲取的截面層曲線進行旋正處理。
本文研究選用最小外接矩形法(MER)[17]對橫截面點云數據進行旋正處理。如圖3所示,以肩部截面層為例。

圖3 MER算法示意圖
首先確定旋轉中心為橫截面的外接矩形中心,然后在-20°~20°范圍內以0.1°為間隔圍繞旋轉中心進行旋轉,計算出每旋轉0.1°后外接矩形的面積
S=[max(x)-min(x)]×[max(y)-min(y)]
式中:S為截面曲線的外接矩形面積。
找出面積最小時對應的旋轉角度,則各點的新坐標如下:
式中:xn為旋正后的橫坐標;yn為旋正后的縱坐標;θ為面積最小時對應的旋轉角度。
由于人體截面曲線凹凸不平,很難根據曲線的彎曲變化進行分段描述,本文研究采用極坐標插值[18]對特征截面層點云數據進行重構,以得到特征截面曲線,方便后期角度半徑的提取。借助cart2pol函數將旋正后的直角坐標轉化為極坐標,調用三次樣條插值(spline)確定1個三次樣條函數f(x),在區間[xi,xi+1]上的表達式如下:
f(x)=aix3+bix2+cix+di,i=0,1,…,n-1
Spline插值曲線使用的格式為yy=interp1(x,y,xx,′spline′),即計算出由x和y確定的分段三次多項式y=f(x)在插值點xx對應的函數值yy。

由于擬合后的特征截面曲線數據點過多,在后期建立截面曲線時,計算量過大,會增大誤差。本文研究將各特征截面層曲線每隔10°取1個點,由于已對截面曲線進行了對稱處理,所以只需提取曲線半邊角度半徑Ra,其中a代表角度(a=0°,10°,20°,…,180°),作為后期數據分析的基礎。肩部截面層曲線測量示意圖如圖4所示。

圖4 肩部截面曲線測量示意圖
特征截面各角度半徑與厚度、寬度之間存在一定的關系,為了研究這種關系,將各特征截面層曲線上測量的角度半徑與相對應的厚度、寬度數據進行相關性分析,從而得到特征截面曲線建立規則,為曲面建模奠定基礎。本文研究選用皮爾遜(Pearson)相關系數r,其計算公式如下:

以肩部截面曲線的厚度、寬度及部分插入點的角度半徑為例,相關分析結果如表3所示。

表3 相關性分析
由表3可知,角度半徑R0、R10、R20、R30與肩厚的相關系數接近1,因此,將這些角度半徑僅與肩厚進行一元回歸分析;而角度半徑R90與肩寬的相關系數接近1,將其與肩寬進行回歸分析。同理,可驗證其他特征截面層各角度半徑與厚度、寬度間的相關性。
根據角度半徑與寬度、厚度的相關程度,可建立以角度半徑為因變量,特征截面厚度、寬度為自變量的回歸模型,如下式所示:
Ra=E1×D+E2×W+E
式中:Ra為角度半徑(a=0°,10°,20°,…,180°),mm;E1和E2為回歸系數;E為常數項;D和W為自變量,D為對應特征截面的厚度值,W為寬度值,單位為mm。
利用線性回歸分析可獲得判定系數R2、常數項E及回歸系數E1、E2,建立特征截面曲線規則。為驗證各角度半徑與厚度、寬度之間是否存在比較顯著的線性關系,首先利用散點圖進行分析,觀察它們之間是否呈線性分布趨勢。以肩部截面140°時的角度半徑R140、肩厚、肩寬為例,可看出這三者大致呈線性關系,如圖5所示。

圖5 肩部截面R140散點圖
其他特征截面各角度半徑與對應截面厚度、寬度的散點圖也存在較為顯著的線性關系?;谔卣鹘孛娴暮穸群蛯挾确謩e建立各特征截面各角度半徑的回歸模型,對各特征截面曲線規則進行預測,從而獲得8個特征截面曲線形狀。以肩部截面為例,部分角度半徑與肩厚、肩寬的回歸方程如表4所示。

表4 肩截面部分角度半徑與肩厚、肩寬的回歸方程
在二維尺寸提取中,提取的特征點精確與否較大程度取決于人體輪廓的提取是否精確。本文研究選取最佳閾值分割法提取人體邊緣輪廓。按照灰度級別將像素集合劃分為若干個區域,通過最大類間方差法找到一個合適的閾值進行二值圖像轉換,如圖6(a)所示。為解決某些部位背景和目標的灰度差別較小,導致的目標輪廓不夠平滑、存在孔洞等情況,分別采用開運算和填充來解決,如圖6(b)所示。最后提取二值圖像的邊緣輪廓,得到所需人體輪廓,如圖6(c)所示。

圖6 正側面圖像處理
根據頸肩部建模所確定的8個特征截面層,需要確定出相關特征點(頸點、側頸點、肩點和腋下點),從而獲取曲線建立規則所需的13個特征參數值(見表5)。利用計算機圖形學知識,結合特征點的高度范圍和人體頸肩部形態規律在處理后的人體輪廓上尋找上述特征點,以得到人體特征截面的厚度、寬度和高度,尺寸提取部位如圖7所示。

表5 頸肩部尺寸定義

圖7 二維尺寸提取示意圖
以人體頸部為例,頸部的側面特征比較明顯。首先根據三維測量數據得到頸部高度在人體身高的83.6%~87.2%之間,直線Hu和直線Hd表示頸部高度范圍,從Hu到Hd以1像素行距進行逐行尋找,當MN與上一掃描線M′N′相差最大時,其所在行H即為頸圍行,如圖8所示。直線H上點M與點N之間的距離為頸厚,然后在正面輪廓以相同的高度比尋找頸點。
根據上述原則,本文共提取了頸、側頸、肩及腋下4個部位特征點的像素坐標值,結合光學成像原理得到圖像提取尺寸與真實尺寸的轉換關系,獲取各橫截面厚度、寬度與高度的真實尺寸,為后續個性化頸肩部模型的建立奠定基礎。
隨機選取40個女性樣本的二維圖像,提取特征截面的厚度和寬度數據,分析4個特征截面層(頸部、側頸部、肩部和腋下)曲線厚度、寬度提取值與三維測量值間的關系(見表6),以驗證照片測量尺寸的準確性。

圖8 頸厚測量示意圖

表6 二維提取誤差分析
由表6可知,T檢驗的顯著性均大于0.05,且相關系數較高,表明三維測量值與二維提取值之間無顯著差異;均值的標準誤差都小于0.5,說明誤差較??;誤差百分比(平均絕對誤差/平均值)都小于5%,滿足人體測量要求,說明本文研究提出的尺寸提取方法具有一定的可行性。
由于在對特征截面曲線進行標準化處理時,對各截面曲線的中心位置進行了修改,故在建立模型時需調整每一層的中心位置。以肩部截面為例,如圖9所示。圖中M為肩部截面外接矩形中心,M′為腋下截面外接矩形中心,N為肩部截面的實際中心。通過二維圖像找出M和M′的坐標值,進而計算出二者的水平距離d,則可得到肩截面的實際中心N,各點新坐標如下:
式中:xm為中心調整后的橫坐標;ym為中心調整后的縱坐標;x為肩部截面厚度中心的橫坐標;x′為腋下截面厚度中心的橫坐標。

圖9 中心調整示意圖
本文研究利用NURBS曲面建模法進行頸肩部三維模型構建。通過頸肩部的頂點、邊、表面等相互間的拓撲關系描述頸肩部的形狀,NURBS曲面的數學模型如下:
式中:Di,k(u)為u向的k階基函數;Dj,t(v)為v向的t階基函數;wi,j為加權因子;bi,j為控制點[19]。
由以上公式,根據控制點bi,j可得到u向和v向的節點矢量,即可通過二維尺寸提取、截面曲線建立規則及NURBS曲面建模技術構建頸肩部三維模型。隨機選取2名女性的人體圖像作為測試樣本,采用二維尺寸提取技術提取所需尺寸,然后根據曲線建立規則及三維人體建模技術進行頸肩部模型的構建,所建三維模型如圖10所示。
在實際應用中,不同的服裝對各部位規格允許的誤差要求不同。如GB/T 2665—2017《女西服、大衣》、GB/T 2660—2017《襯衫》和FZ/T 81004—2012《連衣裙、裙套》分別指出了女西服、襯衫、連衣裙對頸圍、肩寬、胸圍允許的誤差范圍,如表7所示??烧J為在該誤差范圍內的頸肩部三維模型能夠用于虛擬試衣或服裝遠程定制。

表7 規格允許誤差
為進一步驗證該方法構建的頸肩部模型的精度,對比分析測試樣本各部位模型尺寸與三維測量尺寸間的差值,即誤差,結果如表8所示。

表8 三維建模誤差分析
由表8可知,誤差均小于1,同時頸圍、肩寬均在成衣尺寸規格允許的誤差內。其中,樣本1#中誤差最大的為肩圍1.0 cm,其次是肩斜角0.9°;樣本2#中誤差最大的為肩斜角0.7°;造成這2個部位誤差相對較大的原因在于人體肩部截面形狀較為復雜,且肩點位置較難確定。
本文研究對非接觸式二維人體尺寸測量與個性化三維人體模型自動生成進行了研究,提出了二維尺寸測量方法,并根據提取的人體尺寸建立特征截面曲線,從而構建個性化頸肩部模型。研究主要成果如下。
1)建立截面曲線規則。利用逆向工程軟件對女性樣本的三維點云數據進行處理,截取了8個特征截面曲線;對橫截面進行旋正、三次樣條插值及對稱處理,然后每隔10°提取角度半徑,并分析其與截面厚度、寬度之間的線性回歸關系,得到各特征截面曲線的建立規則,為頸肩部三維模型的構建奠定了基礎。
2)提出二維人體尺寸測量方法。以二維圖像為基礎,利用MatLab軟件進行人體輪廓提取,結合人體比例和頸肩部形態規律確定特征點,計算得到所需尺寸,并對提取的尺寸進行誤差分析,誤差百分比都小于5%,證明了二維尺寸測量的準確性與可行性。
3)建立個體化頸肩部模型。通過二維尺寸測量方法提取所需尺寸,以“坐標點—截面曲線—人體表面”為建模的基本思路,結合曲線建立規則,得到建模所需的8層特征截面曲線的坐標值并確定截面中心位置,最后選用NURBS曲面建模實現基于正側面照片的頸肩部三維模型構建。