引言
人體運動是個復雜的連續過程,對此過程實現數字化記錄和處理,則可為人體運動分析與研究提供極大方便。人體運動是由人體上各個關節點來牽引和約束的1,如果能記錄到每1 幀中各主要關節點的位置數據,再進行人體建模與圖像重構,則可實現人體運動數字化。結合國家“863”課題,研究開發這套人體運動實時捕捉設備,它實現對人體在有限空間運動時各主要關節點(Marker 點)的探測和數據采集,根據相應計算和處理,得出各點坐標數據,同時進行虛擬人運動圖像重構。這樣,人體在運動時,PC 機上實時動態地顯示虛擬人運動及虛擬空間的圖像,并保存數據和圖像以備進一步處理。
由于實現人體運動數據化、同步圖像動態顯示、數據和圖像保存等多項功能,這套設備在影視廣告和動畫的實時制作、特技動作拍攝、體育、醫療、測量和輔助設計等方面都有很大的應用潛力,而且體現出實時、快速、經濟、可重復等優勢。本文介紹其設計原理,并對其應用前景進行說明。
1 系統設計原理
1.1 系統硬件設計
成套設備包括:4 ~ 6 個探測支架、主控制盒、特制緊身衣、同步控制盒、三角檢測架及專用導線等。主控制盒內嵌USB Hub、電源及工作切換等模塊,向設備供電并使主機通過USB 口連接各支架,在運行前檢測時提供轉換功能。特制緊身衣上頭部和各關節點粘有高亮紅光LED,各LED 有線連到同步控制盒。同步控制盒由電路控制各LED 發光時序,并與各探測支架通過無線收發電路進行同步工作。三角檢測架用于在系統運行前設定地面坐標系并檢測出各個探測支架放置的位置與姿態。
其中,探測支架是整個系統的核心部件,下面介紹其設計原理(見圖1)。
圖1 人體運動實時捕捉儀示意圖
由于光不具穿透性,系統采用4 ~ 6 個探測支架(見圖1b)環形向內探測。人穿上特制緊身衣,啟動(手機狀)同步控制盒工作,在1 幀時間內,它控制各LED交替閃爍1 次,并與各探測支架無線同步,各支架同時對閃爍的LED 進行探測和信號采集,將1 幀中分別對各LED(即Marker 點)采集到的數據通過USB 通信傳輸給上位機,進行數據遴選、濾波和計算等處理,即可得到各Marker 點的位置坐標,按25 幀/ s 進行連續采集,經上位機圖像重構,可實現人體運動→虛擬空間實時圖像的再現。
1.2 數據處理與坐標計算
上位機應用程序由定時器控制每幀開始時分別從各探測支架通過USB 傳輸讀取幾個數據包,對這些數據包進行解析,得到1 幀中各支架分別探測各Marker點時的上下沿數據(即na、nb 系列),由這些原始數據計算出1 幀中各Marker 點的坐標位置,還需要進行如下處理:
1.2.1 數據遴選、補缺與平滑處理如果1 個支架上3個CCD 全部感光輸出,則可計算出該點的支架坐標(相對坐標)。由于人體運動的隨意性和光不可穿透性,1 個Marker 點發光時,可能有多個支架探測到也可能都沒探測到。前者要進行遴選,結合幾個選優原則,取其中1 個支架探測數據進行相對坐標計算。后者要進行補缺,根據該點與肢體上附近其它幾點的關聯特性(如相對距離等因素)和該點前幾幀位置進行擬合計算。
當LED 不動時,由于CCD 工作時溫度變化、積分時間變化對暗電壓有影響,引起輸出電壓微小波動,經固定閾值二值化處理后,na、nb 即發生極小波動,這是CCD 工作不可避免的,如果按這種波動的數據計算坐標并提供給圖像顯示,則圖像出現微小抖動而不清晰。
為此進行平滑濾波處理,將該幀數據與前3 ~ 4 幀數據一起做平滑處理,降低一點探測精度但保證圖像穩定效果,根據使用的CCD 芯片,實際探測精度達到4mm以內,滿足人體運動建模要求。1.2.2 相對坐標計算首先計算各Marker 點在支架坐標系中坐標,按光學成像公式計算,但由于加工安裝等因素,許多參數要通過實驗檢測來測得,還要進行補償修正。具體計算公式這里略,用函數表示(式1)為:
X⊥Y⊥Z = f(P1,P2,P3,D1,D2,D3,R,L,f,μ,na1,nb1,na2,nb2,an3,nb3) (1)
式(1)中P1、P2、P3分別為3 個鏡頭光軸線對準的CCD 像敏元的序號,D1、D2、D3為3 個鏡頭中CCD 感光面距光學鏡頭距離,L、R 為支架左、右臂長,f 為鏡頭焦距,μ為CCD 像敏元寬度,f、μ已知。P1、P2、P3、D1、D2、D3和L、R 這8 個與安裝有關的參量要通過定點、定距實驗測算出來。系統運行時,由na1、nb1、na2、nb2、na3、nb3這6 個輸出量,來計算該點相對坐標。
1.3 位姿檢測與坐標融合
式(1)算出的是各Marker 點的支架相對坐標,而人體上各點要統一到地面坐標系中,因而在系統運行開始時,要通過檢測求得各支架的擺放位置和姿態(即支架坐標系與地面坐標系之間的偏移量Δx、Δy、Δz 和旋轉角度α、β、γ)。用三點間相互距離確定的三點檢測架(見圖2)放在中間并設定地面坐標系OXYZ,依次閃亮ABC 三點,各支架對其探測并計算,采用空間向量旋轉計算方法,求得地面坐標系與各支架坐標系的轉換矩陣。爾后撤去檢測架,人體進行活動范圍運動。幾個探測支架在1 幀中聯合對各Marker 點探測計算,最終得各點地方坐標,供人體建模與圖像重構調用。
圖2 3 點檢測支架
1.4 人體建模與圖像重構
在人體建模時,先定義人體結構,本系統將人體分成16 個肢體段,由15 個關節相連,采用相對真實的體模型來建立人體運動模型,采用VRML 語言中H - Anim標準來寫人體結構,即采用一種稱為CSG(ConstructiveSolid Geometry)的模型表示法,利用關節嵌套來設定各關節和肢體段的關系,定義各肢體間位置關系即關節位置和各肢體朝向等信息,最后為人體附著各色衣服,使人體模型更加逼真2,4。
當人體模型運動時,關節結合部可能產生較大裂痕,系統通過動態生成點圈來進行各肢體間的無縫化處理,從而保證人體運動圖像肢體、表面的完整性和連貫性。
2 系統應用前景
該系統的實質性功能是三維空間范圍內若干個點的實時動態位置檢測。它不僅僅用于描述人體運動,還可以進行拓展。在應用程序中建立男女老少等不同的人體基本模型,以及各種固體道具模型或辦公設施,可心構成動靜結合的虛擬空間。該系統可在如下幾方面具有很大的應用價值和開發潛力。
2.1 廣告動畫和影視特技制作
目前,用軟件進行動畫制作一般要1 幀1 幀地設計,工作量大、費時長,因而資金投入多、商業風險大。應用該系統進行廣告動畫或影視特技片段制作時,人穿上特制緊身衣,按照設計的情節和動作,在探測范圍內表演,調用相應的人體模型,則上位機上同步顯示虛擬人的相同動作的運動圖像,保存圖像并將人的運動保存為標準的運動數據文件(如csm文件等)。通過對局部幀的圖像修飾或使用專業制作軟件調用已形成的csm文件進行修飾,在虛擬空間中配上一定的三維場景,則可實現廣告動畫或影視特技片段的制作。與傳統方法相比,應用該系統制作時,制作速度快、成本低、簡單方便。幾分鐘的簡單動畫或廣告很快就能完成。而且它是由實際人的運動采集來的,其動畫動作更符合人性化。
當采用更高速的CCD 芯片時,在保證按25 幀/ s進行連續采集的情況下,Marker 點數目不斷增加,進而可實現雙人和多人運動表演或對單人運動的更細膩描述(如手指運動等)。
2.2 人體運動分析
現代體育運動學的研究更強調對人體運動過程的精細描述,實現人體運動的數字化記錄將為該項研究提供極大方便,它便于進行統計和對比分析,在體育運動分析等方面具有有效的輔助作用。如以跑步訓練為例(見圖3),當運動員在跑步機上測試時,設備探測、記圖3 跑步訓練實例錄幾個點(也是Marker 點,例如圖中一側的10 個)在3個坐標軸(或平面)上的位置,并計算其速度、加速度等變化參數,按時間曲線顯示,通過與優秀運動員的數據對比分析或與過去訓練記錄對比,可以對訓練中存在的問題、訓練方法和訓練進展情況等主要訓練問題進行細致量化的分析。與此相似,該系統在運動醫療康復保健方面也有療效分析的輔助作用。
圖3 跑步訓練實例
2.3 測量與輔助設計
由于它能動態測量一定空間范圍內多點的位置,因而其相互距離和相對運動參數等均可實時測量并顯示,在此功能的基礎上,它還可應用于某些模型、部件的輔助設計或三維圖像復制。用若干Marker 點放置在虛擬的模型外形輪廓的幾個標識點上,應用程序按相關曲(平)面擬合,構造出模型的三維空間圖像,調整Marker 點位置,模型圖像隨之調整,直到符合設計要求。
它不需要借助實體模型來實現數字化,也不用在機器上完全繪制,提高設計時效。對于已有的模型或部件,帖上Marker 點后,很容易得到并保存其三維數字圖像,供修飾處理。當然,應用程序中要儲存有大量的模型圖像模板,供調用。
2.4 其它應用
該系統具有三維空間多點動態位置檢測的功能,在實際應用上有很大的引伸和拓展,如殘缺文物的三維數字圖像保存、碰撞實驗或機械運動的數據快速自動記錄與分析,等等。它能增加圖像制作時效,節約成本。形成的數據文件還可供進一步修飾。
3 結論
本文對人體運動實時捕捉設備的硬件設計原理、所采集到的數據信號處理以及坐標計算、人體運動模型圖像實時重構等進行系統介紹,對這套設備的應用前景進行分析并引例說明。國內市場有從國外引進的相關設備,價格昂貴,采用多Marker 點同時采集,采集完后進行Marker 點圖像跟蹤識別等處理方法,不具同步顯示功能。研發的本套設備其主要特點具有同步采集和顯示功能,成本低,經濟實用。
參考文獻
1 Kalra,P.,Magnenat Thalmann,N.,Moccozet,L.,et al.Real - time Animation of Realistic Virtual HumansJ?. IEEEComputer Graphics and Applications,1998,18(5):42 ~ 55
2 龔光紅,馮勤,彭曉源等. 人體運動的形象化建模與仿真〔J〕,系統仿真學報,2002,14(3):285 ~ 287
3 王有慶編著. CCD 應用技術,天津:天津大學出版社,2000
4 和平鴿工作室. OpenGL 高級編程與可視化系統開發〔M〕,北京:中國水利水電出版社,2003