摘要:給出一種基于圖像的人體參數自動測量方法,并設計與實現人體參數測量系統。通過2個數碼相機拍攝人體的正視圖和側視圖,運用圖像分割和特征提取等圖像處理方法提取2幅圖像上的人體特征點;利用三維標定架標定相機的內外參數;利用雙目視覺原理從2幅圖像上的特征點計算出人體的測量點,完成人體尺寸參數計算。試驗結果表明:與傳統手工測量相比,本方法能實現自動測量,縮短了測量時間,提高測量的精度和效率;與三維非接觸測量相比,本方法測量設備簡單和便攜,測量速度更快,操作更加方便。
關鍵詞:人體測量學;雙目視覺;相機標定;特征點匹配;圖像分割
中圖分類號:TP391.4文獻標識碼:A
Design and Implementation of the Human Size Measurement
System Based on Images
WU Zhuang-zhi1, LIAO Shuang-shuang1, NIE Lei1, WANG Zheng2,WANG Chun-hui2,ZHOU Shi-hua2
(1.School of Computer Science and Engineering, Beihang Univ, Beijing100191,China;
2.Space Medicine Medical Engineering, Beijing100094,China)
Abstract: Anthropometry researches the morphological features of human body through the investigation of the dimension of human body and serves for industry design, ergonomics, cloth manufacture and medical research. This paper presents human size measurement method based on images, and designs and implements a measurement system. Firstly, the front and side images of a tester are captured using two digital cameras simultaneously; secondly, the body feature points of two images are extracted by image segmentation and feature extraction methods; thirdly, the intrinsic and extrinsic matrix of two cameras are calibrated; in the end, the body measure points are calculated through the feature points of two images based on the binocular vision principle, then the body measure items are calculated. The experiments show that, compared with the traditional size measurement method, this method is characterized by the automatic measurement, the short measure time and the flexible operation; compared with the 3D non-contact measurement techniques, this method advantages in the cheap and flexible equipment, and the quick speed and the concise working process.
Key words: anthropometry; binocular vision; camera calibration; feature matching; image segmentation
人體測量是通過測量人體各部位的尺寸來確定個體之間和群體之間在人體尺寸上的差別,用以研究人的形態特征[1],從而為工業設計、人機工程、工程設計、人類學研究、醫學等提供人體基礎資料[2]。世界上已有90多個大規模的人體測量數據庫,主要分布在發達國家,例如,在美國和歐洲得到了廣泛應用[3] 的人體測量研究計劃(Civilian American and European Survey of Anthropometry Research,CASER),日本HQL協會提出的人體測量和高質量生活工程(Research Institute of Human Engineering for Quality Life)計劃[4]等。中國標準化研究院也于2005年開展了全國未成年人體測量項目,建立了全國未成年人體三維掃描數據庫。
人體測量技術在近幾十年的發展中,大致經歷了由接觸式到非接觸式、由二維到三維的發展過程。非接觸自動測量是現代化人體測量技術的發展趨勢,它以現代光學為基礎,結合圖像處理、計算機視覺等技術,準確、高效、客觀地獲取人體尺寸參數數據,主要分為基于圖像的二維非接觸測量和基于結構光的三維非接觸測量兩類。加拿大的BoSS-2系統[5]就是一套基于圖像的非接觸式的人體參數測量和服裝套號系統,為加拿大軍隊提供身體測量以實現制服的快捷、自動化生產。德國Human Solution公司開發的Vitus三維人體掃描儀[6]為典型的基于結構光的三維非接觸人體測量設備,已經廣泛應用于人體測量學和人機工效學等領域。
本文研究和實現了一套基于圖像的人體參數測量系統,與 BoSS-2系統相比,本文提出的測量方法能夠識別更多的測量點,交互修改更方便,使得測量的人體參數項目更多,應用范圍更廣。
1 測量需求
本系統以航天醫學工程所需的人體參數測量為背景,共需要測量人體7種姿勢下的72個測量項目,涉及人體7種姿勢下的94個測量點,圖1是7種姿勢的示意圖,包括4個立姿和3個坐姿。
圖1 7種測量姿勢
Fig. 1 Seven postures of measurement
表1列出了72個測量項目和94個測量點在各個測量姿勢上的分布。例如測量項目“身高”通過立姿一進行測量,相關的測量點為“頭頂點”和“地面點”。
2測量原理
本系統采用被動式雙目立體視覺原理進行測量。系統硬件主要由兩個數碼相機和一個標定架組成,圖2為系統測量原理示意圖, 為兩個數碼相機,分別用來拍攝人體的側視圖和正視圖, 為標定架上的三塊互相垂直的平面板, 為固定了標定架上的三維世界坐標系,每塊板上分別布置了10個在 坐標系下位置已知的定標點。
圖2 系統測量原理示意圖
Fig. 2 Sketch of measurement principle
測量流程圖如圖3所示。首先,由兩個已標定好的數碼相機在同一時刻從正面和側面兩個角度獲取被測人體的兩幅數字圖像;然后,運用圖像分割、特征提取等方法在兩幅圖像上提取與人體上測量點對應的特征點對,并運用基于配極約束的交互式編輯工具對特征點進行確認;第三,基于雙目視覺原理,利用標定結果計算出每對特征點對應的人體的測量點;最后,根據測量點坐標,計算人體各項測量項目尺寸。相機標定過程如下:在每次測量前,每個相機拍攝一張三維標定架的標定圖像,利用標定架上的精確三維定標點和其在標定圖像的像素點位置關系來標定攝像機的內外參數。
本文定義三維測量點在正視圖或側視圖上的投影點為特征點,一個三維測量點在正視圖和側視圖的兩個特征點稱為此測量點的特征點對。測量點的特征點對的識別是本系統的關鍵問題。設測量點 在兩幅圖像上的特征點對為 ,根據 的識別難度可將測量點分為如下三類:
1)第1類測量點: 兩點都能準確識別。系統能全自動提取 。
2)第2類測量點: 中有一點能準確識別。不妨設 能準確識別,采用雙目視覺測量中的配極幾何原理,求出 在另外一幅圖像上的配極線 ,然后運用人體比例關系,給出 在 上的初始位置,并允許用戶在配極線 上交互式編輯 。
3)第3類測量點: 中兩點都不能準確識別。由于在兩個圖像平面上識別特征點都很困難,運用人體比例關系給出 的初始位置,之后用戶可以交互式編輯 點。編輯 或 時,系統會在另一幅圖像中顯示相應的配極線 或 ,以協助用戶定位 或 。參見圖5。
圖3 系統測量流程圖
Fig.3 Flow chart of system measurement
3 關鍵技術
3.1相機標定
攝像機標定是指建立攝像機圖像像素位置與場景點位置之間的關系,根據攝像機模型,由已知定標點的圖像坐標和世界坐標求解攝像機的模型參數。本系統采用空間標定架進行標定,標定架由兩兩互相垂直的三塊平板構成,尺寸為2m*1m*2.5m,標定架上的世界坐標系 的原點為三個面的交點處, 為面的交線,豎直向上的方向為 方向, , 方向滿足右手法則。每個面上貼10個定標點,其在 坐標下的坐標已知,如圖2所示,圖中的圓點即為系統定標點。
本系統采用Roger Tsai[7]提出的基于徑向約束的兩步法標定法來標定相機,標定過程如下:
1)定標點圖像坐標計算:拍攝標定圖像,使用Hough變換識別所有定標點的像素位置;
2)Tsai標定:根據定標點的圖像坐標和世界坐標對應關系,首先利用最小二乘法解超定線性方程確定攝像機的外部參數;然后求解攝像機的內部參數,并結合非線性優化的方法獲得包括非線性畸變參數在內的全部相機參數。
該方法計算量適中,精度較高,理論平均相對精度可達1/4000,深度方向相對精度可達1/8000。經驗證,系統的實際平均定標誤差在1.5mm左右。
在得到相機的內外參數以后,給出任意一個二維像素點,就可以得到該像素點在世界坐標系 上的一根射線。
3.2圖像分割
通過圖像分割將被測人體從整體分為頭部、胸部、軀干、左臂、右臂、左腿、右腿等7個部分,其目的如下:1)將特征點的識別問題分解到人體的某個部分,使得特征點的識別更加快速和魯棒;2)對于難以識別的特征點,分割可以更加準確地尋找此點在人體上的比例,可以得到更為準確的初始點。
分割過程如下:1)測量圖像進行二值化。隨后采用邊界跟蹤算法[8]得到有序的人體輪廓像素點集T;2)尋找分割關鍵點。由于多數分割關鍵點位于人體各個部分在輪廓線上的連接處,在輪廓線上曲率較大,采用文獻[8]中所描述的DOS方法,通過尋找到曲率極值點來進行分割關鍵點識別。不能用上述方法尋找的分割關鍵點,則通過人體姿勢、比例關系和顏色變化等方法尋找;3)并根據不同的姿勢將分割關鍵點沿輪廓線逆時針方向排序,找到每個部分的分割點完成分割。圖4給出了立姿一測量圖像的分割結果,粗實線為提取的人體輪廓線,輪廓線上的點為識別的分割關鍵點,L、A、B三分割出頭部,B、C、D三點分割出左手, D、E、G、I、H五點分割出軀干。
圖4 立姿一圖像分割結果
Fig.4 Segmentation result of standing posture one
3.3雙目視覺
1)三維重構 根據攝像機標定結果,給出一個特征點對,即可計算出相應的兩條射線的交點作為對應的三維測量點。理論上兩條射線應該交于一點,由于系統誤差和測量誤差等原因,兩條射線經常為異面直線,本文采用異面直線公垂線段的中點作為實際測量點。
2)配極約束 本方法利用配極約束來輔助尋找第2類與第3類測量點對應的特征點。配極約束原理如圖5所示:設雙目立體視覺測量中左右圖像分別為 和 ,設 為兩幅圖像上的一對對應點, 一定位于 在圖像 上所對應的配極線 上,反之亦然。這個特性在雙目立體視覺中稱為配極約束。當已知一對對應點中的一個點時,根據配極約束可以將另一點的搜索范圍從整個圖像平面縮小到配極線上,將二維搜索變為一維搜索,從維度上降低了特征點識別的復雜度。
圖5 雙目視覺配極幾何
Fig. 5 Epipolar Geometry of Binocular Vision
3.4測量項目計算
特征點識別出來以后測量項的計算就有了數據依據。測量項分為高度、寬度、厚度、兩點間線段距離、弧長、圍長等。其中高度、寬度、厚度、兩點間線段距離可以由測量項的相關測量點直接計算出來;弧長則需要先用B樣條擬合后再求長度;圍長則用橢圓進行擬合。設測量點 的坐標為 ,測量項目的計算公式如下:
(1)兩點間線段距離:兩測量點 間距離為 。
(2)厚度計算: 兩測量點 的厚度 。
(3)寬度計算: 兩測量點 的寬度 。
(4)高度計算: 兩測量點 的高度 。
(5)弧長計算:弧長由三個測量點進行定義,采用此三點來擬合過點三階(二次)B樣條曲線,求B樣條曲線的長度作為測點定義的弧長。
(6)圍度計算:圍度由四個測點進行定義,四個測點分別為橢圓的長短軸端點。設四個測點計算出來的橢圓長軸和短軸半徑分別為a和b,則圍長 。如果四個測點不共面,需要先求出四個測點的最小二乘平面 ,并將四個測點投影到 上,運用投影點來擬合橢圓計算圍長。
4系統設計與實現
4.1功能概述
針對每個被測者,本系統采集2幅定標圖像和7個姿勢14幅測量圖像,通過圖像分割和特征提取等方法自動識別人體所有測量點對應的特征點對并通過交互式檢查和更新,運用雙目視覺原理重構出所有94個測量點的三維坐標,并計算出72個測量項目的尺寸。系統的主要功能有:
1)被測者管理:系統使用數據庫來對被測者的個人信息、圖像數據、測量點和測量項目等進行管理,并提供必要的查詢、增加、刪除、報表生成、結果打印等相關功能。
2)讀入并顯示圖像數據:將被測者的測量圖像數據讀入,并對讀入的圖像顯示和瀏覽。
3)特征點識別:通過圖像分割、特征提取、配極約束等方法,利用人體比例關系,在沒有人工干預的情況下完成特征點識別。
4)自動測量:完成特征點自動識別后,系統能夠根據標定結果自動重構所有測量點的三維坐標,同時自動計算所有測量項目的尺寸。
5)交互測量:用戶可以通過交互選取兩個或多個測量點,指定待測量的測量項目類型(寬度、厚度、兩點間距離、弧長、圍長等)來進行交互測量。
6)特征編輯與更新:系統自動識別特征點后,用戶可以通過交互編輯的方式修改特征點位置,同時自動更新相應的測量點和測量項目。
7)測量結果輸出:系統能夠將測量的結果保存為XML文件或Excel表格文件。
8)批處理:用戶指定一個數據文件目錄以后,系統可以自動的完成目錄下全部數據的全自動測量工作。
4.2系統設計與實現
系統主要由相機標定、圖像采集、渲染引擎、特征點識別、測量點編輯、I/O操作、配置管理、數據庫管理、批量處理等模塊組成。
系統運行于Windows XP,在VC.NET 2003開發平臺上采用C++語言實現,界面開發包為Xtreme11.2,底層圖形庫為OpenGL API。
圖6 系統主界面圖
Fig. 6 Main interface of system
圖6為系統運行的主界面。主界面為測量界面,可以分為Menubar、Toolbar、Statusbar、View和Workspace五個部分:Menubar為系統菜單;Toolbar為工具欄;View區域用來顯示待測量圖像和測量項目在測量圖像的示意圖;WorkSpace用來顯示測量點列表、測量項目列表和示意圖,示意圖包括特征點的參考位置與測量項目的圖示。另外系統還包括圖像采集界面、數據庫操作界面、交互測量界面、批處理界面等多個操作界面。
4.3測量結果分析
定標精度:根據30個定標點,通過Tsai算法對相機進行標定,標定精度如下:平均值為1.626475mm, 標準差為0.866529mm,最大誤差為3.337957mm,平方差之和67.174980 mm2, 標準標定誤差為1.343(達到了較高的標定精度,越接近于1標定精度越高)。從該結果可以看到,定標的平均誤差在1.62mm左右,滿足人體測量需求(人體測量要求誤差在5mm之內)。
測量精度:測量精度采用標定物體來進行檢驗。用相機采集標定物體的兩幅圖像,使用軟件提供的交互功能進行兩點之間的距離測量,此距離與標準距離之差為測量精度。如圖7所示,軟件計算的兩點間距離為55.6cm,兩點的標準距離為55.8cm,誤差為2mm,滿足人體測量要求。
系統對20名待測者進行測試,被測者年齡、性別、體型分布較為均勻。經實驗驗證,其中86.7%的測量項目其自動測量結果與手工測量結果相差在5%之內,其余的測量項目由于測量點無明顯特征,或測量項目為圍度或弧度等原因存在誤差大于5%,經手工調整后也能滿足測量要求。
圖7 測量精度驗證圖
Fig. 7 Verification of measurement accuracy
5 結論
本文給出一種基于圖像的人體參數自動測量方法,并設計與實現人體參數測量系統。該系統針對每個被測者,采集2幅定標圖像和7個姿勢14幅測量圖像,通過圖像分割和特征提取等方法自動識別人體所有測量點對應的特征點對并通過交互式檢查和更新,運用雙目視覺原理重構出所有94個測量點的三維坐標,并計算出所有72個測量項目的尺寸。系統具有測量設備簡單、便攜,測量速度快、測量效率高,操作方便等特點。
由于對每個姿勢只有兩幅圖像,不能完全重構人體的三維信息,導致(1)某些測量點無法全自動精確重構;(2)由于弧長和圍度測量曲線上的測量點太少,弧長和圍度尺寸只能估算。改進辦法有:第一,增加相機,采用多目視覺測量;第二,采用統計學習的方法,增加特征點的識別精度。
參考文獻
[1]Rioux M, Abdali O,Viktor H,Paquet E. Exploring Anthropometric Data Through Cluster Analysis[EB/OL]. [2010-06-05]. http://papers.sae.org/2004-01-2187.
[2]Cynthia L I, Hwang S J. 3D body scanning systems with application to the apparel industry [J]. Journal of Fashion Marketing and Management, 2001, 5(2): 120 -132.
[3]Robinette K M, Danen H, Paquet E. The Caesar Project: A 3-D Surface Anthropometry Survey[C]//IEEE 3-D Digital Imaging and Modeling, Ottawa, Canada:IEEE Computer Society, 1999(10):380-386.
[4]HQL Site. Research institute of human engineering for quality life [EB/OL]. [2010-06-05]. http://www.hql.or.jp.
[5]VisImage Systems Inc. Site. Body Measurement and Garment Sizing with BoSS-21[EB/OL]. [2010-06-05]. http://www.vis.ca/product.htm.
[6]Human Solutions GmbH Site. Precise body measurement [EB/OL]. [2010-06-05]. http://www.human-solutions.com.
[7]Tsai R Y. An efficient and accurate camera calibration technique for 3D machine vision[C]//Proc of IEEE Conference of Computer Vision and Pattern Recognition, Miami Beach:FL, 1986(41):364-374.
[8]鞠里. 基于彩色圖像的手部測量系統的研究與實現[D]. 北京航空航天大學計算機學院, 碩士學位論文, 2004:30-39.
JU Li. The Research and Implementation of Hand Measurement System based on Color Images [D]. School of Computer Science and Engineering, Beihang University,Master Thesis, 2004:30-39. (In Chinese)