王朝增,王海燕,李仁旺,萬昌江,孫永劍
(浙江理工大學(xué)先進(jìn)制造研究所,杭州310018)
基于Kinect的人體作業(yè)仿真方法研究
王朝增,王海燕,李仁旺,萬昌江,孫永劍
(浙江理工大學(xué)先進(jìn)制造研究所,杭州310018)
為了提高生產(chǎn)企業(yè)作業(yè)分析的效率和改善作業(yè),提出了一種基于非介入式運(yùn)動捕捉設(shè)備Kinect的人體作業(yè)仿真方法。首先利用Kinect對真實(shí)的人體作業(yè)動作進(jìn)行捕獲,獲取所需的人體運(yùn)動數(shù)據(jù),接著在Kinect人體模型和人機(jī)工效軟件DELMIA的人體模型之間建立映射,并在此基礎(chǔ)上對DELMIA軟件進(jìn)行二次開發(fā),最終實(shí)現(xiàn)由Kinect獲取的人體運(yùn)動數(shù)據(jù)驅(qū)動DELMIA里的虛擬人體進(jìn)行仿真作業(yè)。仿真結(jié)果表明:基于Kinect的作業(yè)仿真方法在運(yùn)動捕捉的適用環(huán)境、精確性和響應(yīng)速度等方面都能很好地滿足企業(yè)應(yīng)用的要求。
運(yùn)動捕捉;作業(yè)仿真;人機(jī)工效;Kinect
隨著經(jīng)濟(jì)全球化的持續(xù)發(fā)展,制造型企業(yè)之間的競爭日趨激烈,如何減少人力成本,有效地提高作業(yè)人員的作業(yè)效率,對于人工成本占很大比例的我國制造業(yè)來說意義重大。提高工人生產(chǎn)率最為直接有效的方法是作業(yè)分析方法。作業(yè)現(xiàn)場數(shù)據(jù)的收集是進(jìn)行作業(yè)分析的第一步。近年來,隨著運(yùn)動捕捉技術(shù)、虛擬仿真技術(shù)的發(fā)展,作業(yè)現(xiàn)場人體形態(tài)特征的獲取由傳統(tǒng)的手工活體測量轉(zhuǎn)變?yōu)橛眠\(yùn)動捕捉的方式來進(jìn)行,其數(shù)據(jù)采集速度和準(zhǔn)確度都有了明顯的改善[1-2]。
運(yùn)動捕捉主要有基于機(jī)械、電磁、聲學(xué)、光學(xué)和圖像設(shè)備等幾種方式[3]。機(jī)械式運(yùn)動捕捉成本低,精度也較高,但由于機(jī)械設(shè)備有尺寸大以及重量重等問題,使用起來非常不方便。電磁式運(yùn)動捕捉可以得到空間位置及方向的信息,速度快、實(shí)時性好,但缺點(diǎn)是對環(huán)境要求嚴(yán)格,表演范圍較小且不適合高速的運(yùn)動。聲學(xué)式運(yùn)動捕捉有較大的延時和滯后,精度較差。被動光學(xué)式運(yùn)動捕捉優(yōu)點(diǎn)是使用方便,采樣速率較高,但系統(tǒng)價格昂貴,后處理(包括標(biāo)志點(diǎn)的識別、跟蹤、空間坐標(biāo)的計(jì)算等)時間長。近年來興起的基于視頻的運(yùn)動捕捉方式能夠很好地解決上述傳統(tǒng)方式存在的問題。但是目前國內(nèi)外在基于視頻的運(yùn)動捕捉方面的研究主要采用的是基于標(biāo)記的視頻跟蹤方法[4-6],在實(shí)際的生產(chǎn)作業(yè)環(huán)境中會受到一定限制,而且現(xiàn)有的基于視頻的人體運(yùn)動捕捉系統(tǒng)一般都只限于簡單場景,不能滿足真實(shí)作業(yè)場景的需要[7]。而采用微軟出品的體感攝影機(jī)Kinect進(jìn)行運(yùn)動捕捉則不需要對人體進(jìn)行標(biāo)記,在運(yùn)動捕捉的精確性和響應(yīng)速度等方面也能很好地滿足真實(shí)作業(yè)場景的要求。
針對上述情況,本文提出了一種基于Kinect的人體作業(yè)仿真解決方案。
人體運(yùn)動捕捉是指從一個或多個視角已同步的圖像序列中恢復(fù)出人體姿態(tài)參數(shù)(關(guān)節(jié)點(diǎn)位置或關(guān)節(jié)角度)的過程,姿態(tài)主要指頭、軀干和四肢的運(yùn)動(不包括表情和手語等小尺度的動作)[8]。通過對人體運(yùn)動的捕捉可以實(shí)時獲得作業(yè)者的真實(shí)運(yùn)動數(shù)據(jù),為人體作業(yè)仿真提供有效的數(shù)據(jù)來源。
Kinect是微軟出品的一款具有即時動作捕捉、影像辨識功能的3D體感攝影機(jī)。Kinect的視覺感應(yīng)器系統(tǒng)包括一個彩色攝像頭、一個紅外投影機(jī)和一個紅外攝像頭,其中彩色攝像頭用來提供彩色圖像,剩余兩個元件通過發(fā)射和接收紅外線提供深度數(shù)據(jù)[9]。
本文以3D攝影機(jī)Kinect作為信號捕捉設(shè)備,通過USB數(shù)據(jù)線將人體作業(yè)數(shù)據(jù)傳輸?shù)接?jì)算機(jī)里的作業(yè)仿真系統(tǒng),利用Kinect的軟件開發(fā)套件(Kinect SDK)獲取所需要的人體運(yùn)動數(shù)據(jù),并進(jìn)行仿真作業(yè)。通過Kinect的軟件開發(fā)套件(Kinect SDK)所提供的骨骼跟蹤功能可以獲取人體骨骼模型的20個關(guān)節(jié)點(diǎn)的三維坐標(biāo)信息,這將為基于Kinect的DELMIA虛擬人驅(qū)動程序的開發(fā)提供數(shù)據(jù)來源。
2.1 兩種人體模型之間的映射
Kinect的骨骼跟蹤功能所建立的人體模型如圖1所示,共包含20個關(guān)節(jié)點(diǎn)。其中頭部、手部、腳部都只有一個點(diǎn),這意味著通過Kinect的骨骼跟蹤功能無法區(qū)分手指的動作,也無法判斷人臉部的朝向。DELMIA的人體模型如圖2所示(圖中只標(biāo)出了部分部位),其人體主干關(guān)節(jié)與Kinect人體模型基本相同,此外還包含了28個手指關(guān)節(jié)和2個腳趾關(guān)節(jié)。
圖1 Kinect人體模型
如果我們忽略掉手指、腳趾等細(xì)微運(yùn)動,則在DELMIA人體模型中大部分部位繞某關(guān)節(jié)點(diǎn)的旋轉(zhuǎn)運(yùn)動能夠與Kinect人體模型中某球關(guān)節(jié)的轉(zhuǎn)動對應(yīng)起來,對應(yīng)關(guān)系如表1所示。
在Kinect人體模型中,左手、右手、頭部、左腳、右腳這些末端關(guān)節(jié)只發(fā)生位置的變化而沒有發(fā)生轉(zhuǎn)動,它們與其父節(jié)點(diǎn)的位置坐標(biāo)數(shù)據(jù)可用來計(jì)算兩關(guān)節(jié)點(diǎn)之間部位的旋轉(zhuǎn)角度。相應(yīng)的,Kinect人體模型中的右肩和雙肩中央兩個關(guān)節(jié)點(diǎn)的坐標(biāo)數(shù)據(jù)可用來計(jì)算DELMIA人體模型中的右鎖骨的旋轉(zhuǎn)角度,Kinect人體模型中的左肩和雙肩中央兩個關(guān)節(jié)點(diǎn)的坐標(biāo)數(shù)據(jù)可用來計(jì)算DELMIA人體模型中左鎖骨的旋轉(zhuǎn)角度。在Kinect人體模型中左臀部、臀部中央、右臀部三個關(guān)節(jié)點(diǎn)可以發(fā)生單獨(dú)的位置移動,而在DELMIA人體模型中,臀部作為一個整體進(jìn)行移動。
圖2 DELMIA人體模型
表1 Kinect人體模型和DELMlA人體模型的對應(yīng)關(guān)系
2.2 DELMIA虛擬人驅(qū)動程序開發(fā)
在Kinect的骨骼空間坐標(biāo)系中,人體位置由X、Y、Z三個坐標(biāo)確定。其中Z軸表示紅外攝像頭光軸,與圖像平面垂直向外,光軸與圖像平面的交點(diǎn)即為坐標(biāo)系的原點(diǎn),用坐標(biāo)系的右手定則即可得到Y(jié)軸和X軸的延伸方向。假設(shè)在運(yùn)動捕捉過程中Kinect攝影機(jī)是靜止的,則稱這個坐標(biāo)系為參考坐標(biāo)系,如圖3所示。
圖3 參考坐標(biāo)系
對于人體的各部位,我們以目視的正前方為z軸,以人體的重心為原點(diǎn),以坐標(biāo)系的右手定則可得到y(tǒng)軸和x軸的延伸方向,以此設(shè)定人體各部位運(yùn)動坐標(biāo)系的初始方位。
在DELMIA中,人體模型姿態(tài)的改變是通過改變相關(guān)部位的自由度來實(shí)現(xiàn)的,根據(jù)身體部位的不同,每個部位可以有2~3個自由度可以設(shè)置。自由度共有以下三種類型:a)(彎曲/伸長)(flexion/extension);b)(展開/內(nèi)收)(abduction/adduction);c)(中心轉(zhuǎn)動/側(cè)面轉(zhuǎn)動)(medial rotation/lateral rotation)。這三種自由度的變化分別對應(yīng)于身體部位繞橫向、徑向、縱向軸的旋轉(zhuǎn),可以用該部位繞自身運(yùn)動坐標(biāo)系的轉(zhuǎn)動來表示如下:先繞軸(運(yùn)動坐標(biāo)系的z軸)逆時針旋轉(zhuǎn)φa度;接著繞軸(運(yùn)動坐標(biāo)系的y軸)逆時針旋轉(zhuǎn)φo度;最后再繞軸(運(yùn)動坐標(biāo)系的x軸)逆時針旋轉(zhuǎn)φn度。用矩陣表示姿態(tài)變化如下(其中C代表余弦Cos,S代表正弦Sin,下同):
用Rot(a,φa)的逆左乘式(1)方程兩邊,得:
式(3)進(jìn)行矩陣相乘后得:
在式(4)中讓兩邊矩陣對應(yīng)元素相等可求得:
式(5)、(6)、(7)中出現(xiàn)的ATAN2(x,y)形式表示返回給定的x及y坐標(biāo)值的反正切值,結(jié)果以弧度表示并介于-pi到pi之間(不包括-pi),結(jié)果為正表示繞軸逆時針旋轉(zhuǎn)的角度,結(jié)果為負(fù)表示繞軸順時針旋轉(zhuǎn)的角度。
通過以上計(jì)算過程,在人體部位的運(yùn)動坐標(biāo)系和參考坐標(biāo)系最初為平行狀態(tài)的情況下,可以由人體關(guān)節(jié)點(diǎn)在參考坐標(biāo)系中的位置坐標(biāo)得到人體部位繞運(yùn)動坐標(biāo)軸的旋轉(zhuǎn)角度。
通過DELMIA的虛擬人體姿勢接口類將這些旋轉(zhuǎn)角度值賦給相應(yīng)的虛擬人體部位,即可實(shí)現(xiàn)DELMIA中虛擬人體模仿真實(shí)的人體進(jìn)行作業(yè)。
3.1 作業(yè)仿真系統(tǒng)的實(shí)現(xiàn)
以Microsoft Visual Studio 2010為開發(fā)環(huán)境,使用C++語言,以.NET 4.0框架作為平臺在2.66 GHz的Intel(R)Core2.2 GB內(nèi)存PC機(jī)上構(gòu)造了基于Kinect的人體作業(yè)仿真&作業(yè)分析系統(tǒng)的程序框架。系統(tǒng)的實(shí)現(xiàn)用到了Kinect的軟件開發(fā)套件(Kinect for Windows SDK)所提供的一些接口,并借助于CAA(component application architecture,組件應(yīng)用架構(gòu))對DELMIA進(jìn)行了必要的二次開發(fā)。CAA的實(shí)現(xiàn)是通過提供的快速應(yīng)用開發(fā)環(huán)境RADE(rapid application development environment)和不同的API接口程序來完成的[10]。RADE在Visual Studio環(huán)境中增加了CAA的開發(fā)工具,它提供完整的編程工具組。API則提供了操作各種對象的方法、工具和接口。Kinect for Windows SDK具有骨架追蹤功能,能夠追蹤Kinect視野內(nèi)一位或二位用戶的骨架影像,并獲取骨骼模型中關(guān)節(jié)點(diǎn)的三維坐標(biāo)數(shù)據(jù),對沒有給出具體數(shù)據(jù)的關(guān)節(jié)點(diǎn)參數(shù)將采用默認(rèn)數(shù)值。系統(tǒng)界面如圖4所示。
圖4 基于Kinect的人體作業(yè)仿真&作業(yè)分析系統(tǒng)界面
3.2 仿真實(shí)驗(yàn)結(jié)果
仿照物流車間的布置,在DELMIA中建立零件柜模型和虛擬人體模型,在物流車間放置好Kinect,并與計(jì)算機(jī)相連接,運(yùn)行系統(tǒng)。當(dāng)人體進(jìn)行搬運(yùn)作業(yè)時,可以看到DELMIA軟件中的虛擬人體仿照人體進(jìn)行相關(guān)作業(yè)動作,失真度很小,且延遲在200~500 ms以內(nèi),達(dá)到了作業(yè)仿真的要求。動作對比效果如圖5和圖6所示。
圖5 DELMIA仿真效果
圖6 真實(shí)人體作業(yè)場景
3.3 DELMIA分析結(jié)論
對上圖5中的作業(yè)動作進(jìn)行快速上肢評估(RULA分析)后發(fā)現(xiàn),當(dāng)以靜態(tài)方式保持該姿態(tài)作業(yè)時RULA分析所得分?jǐn)?shù)為4,若保持此姿勢較長時間將導(dǎo)致人體疲勞損傷,建議更改物料的擺放位置。對該動作進(jìn)行可達(dá)性分析后發(fā)現(xiàn),需搬運(yùn)的物體在人員上肢可達(dá)范圍之內(nèi)。
本文主要介紹了一種基于Kinect的人體作業(yè)仿真方法,設(shè)備使用方便且對使用環(huán)境沒有較大限制,后處理時間短,對企業(yè)加強(qiáng)人體作業(yè)數(shù)據(jù)的采集、分析、處理能力,提高作業(yè)分析的效率具有重要意義。研究的成果與人機(jī)工效軟件相結(jié)合還可以應(yīng)用于“人因工效驅(qū)動的產(chǎn)品設(shè)計(jì)理論與方法創(chuàng)新”、“虛擬仿真”、“客戶化定制”、“故障診斷和維修”等方面,在多個領(lǐng)域具有重要的理論研究價值。
[1]Wu T H,Tian R R,Vincent G D.On simulating human reach motions for ergonomics analyses[J].Human Factors and Ergonomics in Manufacturing&Service Industries,2011,13(1):1-13.
[2]Vincent G D.Modified virtual build methodology for computer-aided ergonomics and safety[J].Human Factors and Ergonomics in Manufacturing,2007,17(5):413-422.
[3]李曉丹,肖 明,曾 莉.人體動作捕捉技術(shù)綜述以及一種新的動作捕捉方案陳述[J].中國西部科技,2011,10(15):35-37.
[4]羅忠祥,莊挺越,劉 豐,等.基于視頻的人體動畫[J].計(jì)算機(jī)研究與發(fā)展,2007,40(2):269-276.
[5]張 偉,馬 靚,傅煥章,等.基于運(yùn)動跟蹤和交互仿真的工作設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報,2011,22(4):1047-1050.
[6]Ma L,Zhang W,F(xiàn)u H,et al.A framework for interactive work design based on digital work analysis and simulation[J].Human Factors and Ergonomics in Manufacturing,2010,20(4):339-352.
[7]李豪杰,林守勛,張勇東.基于視頻的人體動作捕捉技術(shù)綜述[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報,2006,18(11):1645-1650.
[8]Ringer M,Lasenby J.A procedure for automatically estimating model parameters in optical motion capture[J]. Image and Vision Computing,2004,22(10):843-850.
[9]黃康泉,陳壁金,鄭 博,等.Kinect在視頻會議系統(tǒng)中的應(yīng)用[J].廣西大學(xué)學(xué)報,2011,36(增刊1):308-313.
[10]梁岱春,張為民,隋立江.淺析基于CAA的CATIA二次開發(fā)[J].航空制造技術(shù),2012,(10):65-68.
Research on Human Operation Simulation Method Based on Kinect
WANG Chao-zeng,WANG Hai-yan,LI Ren-wang,WAN Chang-jiang,SUN Yong-jian
(Institute of Advanced Manufacturing Technology,Zhejiang Sci-Tech University,Hangzhou 310018,China)
To improve the efficiency of operation analysis of manufacturing enterprises and improve operation,this paper puts forward a human operation simulation method based on non-intrusive motion capture equipment Kinect.It first uses Kinect to capture real human operation and obtains human motion data required;then,establishes mapping between Kinect human model and human-machine ergonomics software DELMIA and conducts secondary development on DELMIA software on this basis;finally realizes simulation operation by virtual human in human motion data driven DELMIA obtained by Kinect.The simulation result shows that the operation simulation method based on Kinect can well meet application requirements of enterprises in the applicable environment of motion capture,accuracy and response speed etc.
motion capture;operation simulation;human-machine ergonomics;Kinect
TP311
A
(責(zé)任編輯:張祖堯)
1673-3851(2014)01-0035-05
2013-06-17
浙江省教育廳課題(1103125-F);浙江省自然科學(xué)基金項(xiàng)目(LY12G01009)
王朝增(1988-),男,河南安陽人,碩士研究生,主要從事企業(yè)信息化方面的研究。