朱廣舟,李曉久
(1.廣東工業(yè)大學藝術設計學院,廣東廣州 510090;2.天津工業(yè)大學藝術與服裝學院,天津 300160)
近年來,三維掃描技術的快速發(fā)展與應用使得利用高密度點云來精確描述人體表面成為可能。目前,可通過建立三維人體模型實現(xiàn)對人體表面拓撲結構和幾何結構的細節(jié)描述,這些模型對服裝行業(yè)尤其是數(shù)字化服裝技術領域具有重要意義。通過建立三維人體模型可實現(xiàn)對人體精確、快速測量,可應用于人體生長監(jiān)測、個性化服裝批量定制、三維服裝設計以及虛擬試衣等。
本文基于雙目立體視覺原理開發(fā)研制了一套便攜式三維人體掃描系統(tǒng)[1],系統(tǒng)主要硬件配置如表1所示。
表1 系統(tǒng)硬件配置Tab.1 Hardware of system
被掃描者身著緊身內衣站立在自動旋轉臺上,激光發(fā)射器自動定位于人體頭頂上方距地面2.2 m高度并由上至下對人體進行掃描,處于上下不同位置的2臺攝像機同步拍攝人體正面和背面的激光條紋圖像[1]。
系統(tǒng)軟件通過對人體正面及背面條紋圖像進行預處理、相機標定、特征提取等步驟得到人體正、背面的點云數(shù)據(jù);通過空間幾何變換、立體匹配、點云重定位等操作,得到人體初始掃描點云模型[1-2],如圖1所示。
圖1 初始掃描線點云模型Fig.1 Initial point clouds model
由圖1可知,人體掃描點云模型由一組平行于掃描平面的掃描線組成,掃描線上的點沿掃描方向密度很大,而掃描線之間的點云相對比較稀疏。掃描線上高密度的點云將給后期處理帶來不利影響,因此必須進行精簡。
受掃描環(huán)境、系統(tǒng)算法本身缺陷等因素的影響,人體表面存在部分掃描盲區(qū),有些掃描位置,如腋下、襠部等因遮擋而產(chǎn)生孔洞。另外,與地面平行的部位如肩部、頭頂、腳等部位也常出現(xiàn)漏掃現(xiàn)象,這些原因使點云模型存在孔洞,重建人體表面前必須對其進行修補。
點云精簡是點云處理的一個基礎步驟,可以去除原始點云數(shù)據(jù)中的冗余部分,得到一個精簡的模型,有利于點云的后續(xù)處理和造型。
近年來,研究人員針對掃描點云數(shù)據(jù)精簡進行了大量研究。Rogers和Adams應用相鄰點之間的弦長來進行點云精簡[2]。Lee等提出一種角度偏差鑒別法[3],此法通過計算連續(xù)3個點間的角度偏差來決定是否保留該點。平雪良等[4]利用相鄰兩點間的距離作為參數(shù)來判別該點是否應該精簡。
本文對男性掃描人體進行點云精簡實驗,通過實驗對相關方法進行比較,其中采樣法和包圍盒法的簡化速度較快,但簡度和精度不能同時保證。而弦差法、曲率簡化法等能有效保持點云細節(jié)特征,但是局部區(qū)域的簡度過大造成精度過低而影響后續(xù)建模質量。
本文采用便攜式三維人體掃描系統(tǒng)掃描并獲得人體掃描線點云,根據(jù)分析采用寬度檢測法對掃描線點云進行精簡。具體操作如下:
1)選擇合適的閾值T,T往往取值于掃描線對應的人體寬度D,依據(jù)公式T需在0.001D~0.02D之間來取值;
2)沿X方向將掃描線分成2個部分;
3)選擇每個部分掃描線的第1個點作為標記點p1,其后有 m個點,其中第 r個點記作 pr。在X方向,寬度
4)按照以下方法比較hr與T(參見圖2):如果在T范圍內只有1個點,則保留該點;如果在T范圍內有若干個點,則保留最接近T值的點,刪除其余的點。
圖2 寬度檢測法Fig.2 Width decision method
應用寬度檢測法,得到第2個點后,該點作為新的標記點,依此類推至最后一個點。精簡效果取決于閾值T的選擇,T值越大,被精簡的點云越多。本文利用便攜式人體掃描系統(tǒng)對男性人體進行掃描,應用寬度檢測法進行點云數(shù)據(jù)精簡實驗,結果如表2所示。
為了保證精簡后人體點云模型的細節(jié)特征,T應在一定的范圍內取值。經(jīng)過試驗比較,當T=0.006 D時,人體點云被精簡至61%,結果如圖3所示。
表2 數(shù)據(jù)精簡實驗結果Tab.2 Pesults of data simplification
圖3 精簡后的人體點云模型Fig.3 Simplified point clouds model
對點云孔洞修補目前主要有2種方法:一種是在三角網(wǎng)格面重構后,對三角網(wǎng)格面進行孔洞修補[5],Pfeifle 等[6]采用三角細分算法對孔洞進行細分,并采用基于Delaunay的三角剖分方法在孔洞內部生成新的三角片;另一種是直接對掃描點云進行孔洞修補[5],如 Pavel等[6]利用掃描點云的鄰近點構造曲面來修補孔洞;陳志揚等[7]通過構造逼近的B樣條曲面并在曲面上計算采樣點作為新增數(shù)據(jù)點等。
本文對男性掃描人體點云進行孔洞修補實驗。首先采用Delaunay三角剖分對掃描點云進行三角剖分,再應用插補方法對孔洞進行三角形插補。結果表明:掃描線點云在不完整(有孔洞)的情況下進行三角剖分難度極大,不可控因素很多,網(wǎng)格化后因本身的三角網(wǎng)格生成不佳對后期修補帶來極大麻煩,因此,針對掃描線點云,應該先進行孔洞修補,然后再進行三角剖分及建模。
針對第2種方法,采用三次參數(shù)樣條插值的方法對掃描線上的數(shù)據(jù)點進行全局數(shù)據(jù)的插值擬合。該方法基本能夠實現(xiàn)對掃描線點云數(shù)據(jù)補缺,但每條掃描線均須建立不同的曲線函數(shù),在運算效率上大打折扣。
如前文所述,人體點云模型由一組平行于掃描平面的掃描線組成,同一條掃描線上的點位于同一掃描平面內,這些點存在必然的內在聯(lián)系,同一掃描線上的點在一定程度上處于一個空間灰色系統(tǒng),因此,針對每條掃描線,建立空間灰色模型,利用原始點云數(shù)據(jù)預測新的點云數(shù)據(jù),實現(xiàn)對掃描線的孔洞修補。
灰色系統(tǒng)理論通過灰色生成來弱化原始數(shù)據(jù)序列的隨機性以研究其內在的規(guī)律[8],通過建立灰色生成序列的微分方程,實現(xiàn)對無序數(shù)據(jù)序列的預測[9]。
灰色系統(tǒng)理論主要通過灰色生成處理將原始無序數(shù)據(jù)序列變成有序數(shù)據(jù)序列,通過求解微分方程建立灰色動態(tài)模型[10]?;疑臻g模型解決的是空間點序列問題[11]。
假設P是一組測量點序列,
可以用以下數(shù)據(jù)序列表示原始數(shù)據(jù)序列:
一組新的數(shù)據(jù)序列可按以下公式生成:
然后建立微分方程:
數(shù)據(jù)矩陣B和向量Y如下:
通過求解微分方程,得到p(1)(k):
最后,通過累減生成計算預測值:
每條掃描線上的點通過其空間坐標信息(x,y,z)共同決定該掃描線的運動趨勢。前述測量點序列P可用下面的向量表示:
由于掃描操作特征,同一條掃描線上的點具有相同的y坐標,所以,此處只關注不同點間的x和z坐標值,建立掃描線點云空間灰色模型SGM(1,1)。
3.2.1 坐標轉換
根據(jù)灰色系統(tǒng)理論,數(shù)據(jù)序列為時間序列,要求數(shù)據(jù)序列不能為負值,因此,當測量點坐標值為負時,必須對其進行坐標轉換。為便于處理,當數(shù)據(jù)序列p(tk)出現(xiàn)負值時,采用下面方法對其進行坐標轉換。
這樣,測量點數(shù)據(jù)序列可表示為
3.2.2 孔洞檢測
在進行孔洞修補前,必須先確定該條掃描線是否存在孔洞。根據(jù)掃描線特征,采用相臨兩點間弦長來進行孔洞檢測。每條掃描線上相臨兩點弦長可構成下列數(shù)據(jù)序列:
式中d(1)代表p(n)和p(1)間的弦長。通過分析整理弦長數(shù)據(jù)序列,去除異常數(shù)據(jù),取其平均值作為閾值來檢測孔洞是否存在。若,則孔洞存在。
3.2.3 建立灰色空間模型SGM(1,1)
據(jù)上所述,通過孔洞檢測,若存在孔洞,根據(jù)灰色空間模型基本原理,建立掃描線點云灰色空間模型為
試驗中,每條掃描線上的點按順時針讀取。如果只有1個孔洞,則線上所有點用于建立模型;如果存在2個或2個以上的孔洞,則分段取點建立模型。每當1個新點生成時,需按照孔洞檢測方法重新檢測孔洞是否存在,以決定是否需要生成新的點。
當處理完所有掃描線,就完成對點云模型的孔洞修補,結果如圖4所示。
圖4 孔洞修補后的人體點云模型Fig.4 Hole-filled point clouds model
本文利用自行研制的便攜式三維人體掃描系統(tǒng)掃描并獲得人體掃描線點云模型。受掃描環(huán)境、系統(tǒng)算法本身缺陷等因素的影響,原始點云數(shù)據(jù)存在很多不足,如點云密度過高、存在孔洞等。在進行人體表面重建前,必須進行有效處理。通過分析掃描線點云特征,采用寬度檢測法進行點云數(shù)據(jù)精簡,精簡結果依賴于閾值T,當T=0.006D時,人體點云被精簡至61%。針對孔洞修補,提出一種基于空間灰色系統(tǒng)理論的解決方法,建立掃描線點云空間灰色模型SGM(1,1),有效地實現(xiàn)對人體掃描線點云的孔洞修補。
[1] WANG Yuxiu, LI Xiaojiu. A portable body measurement system based on stereo vision[C]//LI Xiaojiu.Proc Int Text,Cloth Des Conf-Magic World Text,2008:686-691.
[2] 李曉久,景曉寧.基于非接觸式測量的人體點云簡化方法[J]. 紡織學報,2012,33(7):144-148.LI Xiaojiu,JING Xiaoning.Study of body point cloud simplification based on non-contacted measurement[J].Journal of Textile Research,2012,33(7):144-148.
[3] LEE K,WOO H,SUK T.Data reduction methods for reverse engineering[J].The International Journal of Advanced Manufacturing Technology,2001,17(5):735-743.
[4] 平雪良,李進亮,徐榮禮,等.逆向工程中掃描線類型數(shù)據(jù)的簡化技術[J].江南大學學報:自然科學版,2006(3):258-260.PING Xueliang,LI Jinliang,XU Rongli,et al.Scan line data reduction for reverse engineering[J].Journal of Southern Yangtze University:Natural Science Edition,2006(3):258-260.
[5] LI Xiaozhi.Filling the holes of 3-D body scan line point cloud[C]//LI Xiaojiu. Proceedings of the 2nd International Conference on Advanced Computer Control,2010:334-338.
[6] DU J,ZHANG L Y,WANG H T.Hole repairing in triangular meshes based on radial basis function[J].Journal of Computer-Aided Design&Computer Graphics,2005(9):1976-1982.
[7] 呂瑩瑩,郝偉,郭金金.三維人臉模型孔洞修補技術研究[J].計算機仿真,2012(1):195-198.Lü Yingying,HAO Wei,GUO Jinjin.Hole-repairing of face model[J].Computer Simulation,2012(1):195-198.
[8] 劉思峰,郭天榜,黨耀國,等.灰色系統(tǒng)理論及其應用[M].北京:科學出版社,1999:75-208.LIU Sifeng,GUO Tianbang,DANG Yaoguo,et al.The Theory of Gray System and its Application[M].Beijing:Science Press,1999:75-208.
[9] ZHU Guangzhou.Gray modeling of hip girth based on the non-contacted human body measurement system[C]//LI Xiaojiu. Proceedings of the 2nd International Conference on Modelling and Simulation,2009:22-27.
[10] 李曉久,朱廣舟.人體胸圍尺寸灰色模型建立[J].紡織學報,2005,26(5):77-79.LI Xiaojiu,ZHU Guangzhou.Establishment the grey model of bust girth[J].Journal of Textile Research,2005,26(5):77-79.
[11] PING Xueliang, ZHOU Rurong, AN Luling.Application of grey system theory to processing of measuring data in reverse engineering[J].Transactions of Nanjing University of Aeronautics & Astronautics,2003,20(6):36-41.