• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于MEMS傳感器和Unity3D的人體運(yùn)動(dòng)捕獲系統(tǒng)

      2015-12-02 10:44:21張澤宇
      圖學(xué)學(xué)報(bào) 2015年2期
      關(guān)鍵詞:陀螺儀加速度計(jì)坐標(biāo)系

      張 衡, 張澤宇

      (西南大學(xué)計(jì)算機(jī)與信息科學(xué)學(xué)院,重慶400715)

      基于MEMS傳感器和Unity3D的人體運(yùn)動(dòng)捕獲系統(tǒng)

      張 衡, 張澤宇

      (西南大學(xué)計(jì)算機(jī)與信息科學(xué)學(xué)院,重慶400715)

      隨著人機(jī)交互技術(shù)的發(fā)展,人與計(jì)算機(jī)之間自然、多模態(tài)交互將成為人與計(jì)算機(jī)之間交互的主要方式,而這首先需要計(jì)算機(jī)可以正確地理解和捕捉人的行為特征,運(yùn)動(dòng)捕獲技術(shù)正是在這種背景下提出來。通過運(yùn)動(dòng)捕獲技術(shù),計(jì)算機(jī)可以理解人體動(dòng)作,用戶就可以通過體態(tài)、方位、手勢(shì)和表情等模態(tài)向計(jì)算機(jī)發(fā)出指令、傳達(dá)信息等,因此運(yùn)動(dòng)捕獲是新一代人機(jī)交互中的關(guān)鍵技術(shù)之一。目前基于MEMS慣性傳感器的動(dòng)作捕獲研究主要針對(duì)動(dòng)漫和電影制作,價(jià)格昂貴;隨著傳感器的集成度變高,價(jià)格逐漸降低帶來了新的系統(tǒng)設(shè)計(jì)需求。在原有動(dòng)作捕獲技術(shù)基礎(chǔ)上,設(shè)計(jì)并實(shí)現(xiàn)一種普適性更好的人體動(dòng)作捕獲系統(tǒng)原型,原型系統(tǒng)實(shí)現(xiàn)了基于慣性傳感節(jié)點(diǎn)的人體運(yùn)動(dòng)信息的采集與融合、節(jié)點(diǎn)與匯聚節(jié)點(diǎn)的數(shù)據(jù)傳輸、虛擬人體模型實(shí)時(shí)動(dòng)作呈現(xiàn)程序;實(shí)現(xiàn)了從數(shù)據(jù)測(cè)量到采集,再到模擬呈現(xiàn)的全過程。

      MEMS慣性傳感器;人機(jī)交互;動(dòng)作捕獲

      當(dāng)前,體感互動(dòng)主要采用的傳感設(shè)備是動(dòng)作捕獲系統(tǒng),主流設(shè)備分光學(xué)系統(tǒng)和慣性傳感系統(tǒng)兩類[1]。主流的光學(xué)動(dòng)作捕捉系統(tǒng)由多臺(tái)高速紅外攝像機(jī)構(gòu)成,被測(cè)者需要全身佩帶捕捉標(biāo)記,盡管捕獲精度高,效果好,但是使用復(fù)雜且價(jià)格昂貴[2-3]。典型產(chǎn)品是美國(guó)的 Vicon。這類產(chǎn)品主要應(yīng)用于動(dòng)漫、制作游戲。

      最近幾年一種廉價(jià)、具有深度感知的光學(xué)動(dòng)作捕獲裝置Kinect、LeapMotion的出現(xiàn),引發(fā)了體感互動(dòng)熱潮,使得體感互動(dòng)進(jìn)入主流。這類光學(xué)捕獲裝置主要具有深度感知,采用結(jié)構(gòu)光、飛行時(shí)間或者雙目視覺技術(shù)[2-3]。文獻(xiàn)[3]以光學(xué)式捕捉技術(shù)為基礎(chǔ),提出了完整的動(dòng)作捕獲、處理與虛擬動(dòng)作重構(gòu)方案。文獻(xiàn)[4]借助Kinect,設(shè)計(jì)了基于深度信息的動(dòng)作捕獲方法,所設(shè)計(jì)的示教系統(tǒng)能較精確地重現(xiàn)人體的三維動(dòng)作并對(duì)學(xué)員的動(dòng)作缺陷給出合理的提示。文獻(xiàn)[5]在運(yùn)動(dòng)圖像信息成功捕獲的基礎(chǔ)上,研究了動(dòng)作的精確識(shí)別方法,在運(yùn)動(dòng)數(shù)據(jù)的關(guān)鍵幀提取、動(dòng)作識(shí)別與運(yùn)動(dòng)分割以及帶拒識(shí)能力的連續(xù)動(dòng)作識(shí)別3個(gè)方面展開深入工作,提高了動(dòng)作捕獲系統(tǒng)的準(zhǔn)確性。此外,國(guó)內(nèi)外商家也基于光學(xué)動(dòng)作捕獲技術(shù)開發(fā)了一系列體感互動(dòng)游戲、健身、設(shè)備操控等產(chǎn)品。但是,光學(xué)類動(dòng)作捕獲設(shè)備普遍具有范圍、遮擋、戶外、光線、高速移動(dòng)和人數(shù)等限制。

      動(dòng)作捕獲的另一類技術(shù)和產(chǎn)品是基于慣性傳感的動(dòng)作捕獲系統(tǒng)。典型的系統(tǒng)有XSensMVN,由于價(jià)格較貴,使得該產(chǎn)品與Vicon一樣成為少數(shù)特殊單位的應(yīng)用“專利”。中科院研究生院等單位研制的MMocap與Xsens公司相似,取得了非常好的成績(jī),如果能夠打開市場(chǎng),將是XSensMVN競(jìng)爭(zhēng)產(chǎn)品。同時(shí),文獻(xiàn)[6]和[7]在慣性傳感技術(shù)的基礎(chǔ)上,著重研究了新型的數(shù)據(jù)采集與動(dòng)作分析方法,通過進(jìn)一步分析處理所得的動(dòng)作數(shù)據(jù),實(shí)現(xiàn)了人體運(yùn)動(dòng)姿態(tài)的重構(gòu),對(duì)完整的慣性傳感動(dòng)作捕獲系統(tǒng)進(jìn)行了深入探索。文獻(xiàn)[8]提出了將慣性傳感節(jié)點(diǎn)佩帶在身上完成數(shù)據(jù)采集的方法,解決了光學(xué)式動(dòng)作捕獲成本高的問題,降低了動(dòng)作捕獲系統(tǒng)的成本和使用復(fù)雜度。另外,也有許多其他研究機(jī)構(gòu)和公司都在前幾年開展了相關(guān)研究,如國(guó)家體育總局、北京諾亦騰公司等,都取得較好的成績(jī)。

      隨著MEMS器件的集成度越來越高,應(yīng)用點(diǎn)越來越廣,出現(xiàn)對(duì)基于MEMS傳感器的動(dòng)作捕獲系統(tǒng)的新需求,即價(jià)格相對(duì)較低、靈活性較強(qiáng),受眾的使用范圍更多更廣。文獻(xiàn)[9]和[10]闡述了在基于MEMS傳感器技術(shù)的人體動(dòng)作捕獲研究中的成果。文獻(xiàn)[9]通過單傳感器節(jié)點(diǎn)動(dòng)作效果檢測(cè)和人體動(dòng)作捕獲的實(shí)驗(yàn)設(shè)計(jì),驗(yàn)證了所設(shè)計(jì)的人體動(dòng)作捕獲裝置原理的正確和工作性能的穩(wěn)定可靠,為人體動(dòng)作捕獲的后續(xù)算法研究提供了一套完整的硬件平臺(tái)。文獻(xiàn)[10]則基于MEMS傳感器芯片的小型化、結(jié)構(gòu)簡(jiǎn)單化進(jìn)行了探索,并實(shí)現(xiàn)了完整的體感信息采集與動(dòng)作重現(xiàn),但存在可擴(kuò)展性及精確性不足的問題。文獻(xiàn)[11]提出了MEMS傳感器數(shù)據(jù)與人體運(yùn)動(dòng)關(guān)節(jié)相對(duì)應(yīng)的標(biāo)定方法并分析了傳感器采集數(shù)據(jù)存在誤差的原因,以互補(bǔ)濾波器方法提高了運(yùn)動(dòng)數(shù)據(jù)的精度。文獻(xiàn)[12]以共享數(shù)據(jù)文件的方式實(shí)現(xiàn)了動(dòng)作數(shù)據(jù)在模擬程序中的實(shí)時(shí)呈現(xiàn),并證明了該方法的準(zhǔn)確性與便捷性,但該方法在靈活性上存在缺陷。文獻(xiàn)[13]對(duì)多傳感節(jié)點(diǎn)的協(xié)同工作進(jìn)行了研究,針對(duì)節(jié)點(diǎn)通信的抗干擾能力進(jìn)行重點(diǎn)改善,實(shí)現(xiàn)了多傳感節(jié)點(diǎn)通時(shí)裝備條件下的可靠工作。文獻(xiàn)[14]和[15]同樣圍繞動(dòng)作捕獲與重現(xiàn)的精確性進(jìn)行了改善,分別提出了基于數(shù)據(jù)融合思想的擴(kuò)展卡爾曼濾波方法以及多層次的數(shù)據(jù)融合算法,為動(dòng)作捕獲系統(tǒng)消除誤差,提高采集數(shù)據(jù)精度具有指導(dǎo)意義。

      由于人體運(yùn)動(dòng)捕獲具有立體呈現(xiàn)和與虛擬現(xiàn)實(shí)相融合的特點(diǎn),必不可少地要用到后臺(tái)呈現(xiàn)或展示平臺(tái)。Unity3D可以直接使用3DSMax的max、Maya的.md等大多數(shù)建模格式。Unity3D還有優(yōu)秀的設(shè)計(jì)環(huán)境、方便快捷的設(shè)計(jì)流程、易于操作的場(chǎng)景編輯器,目前成為3D游戲和虛擬仿真項(xiàng)目?jī)?yōu)先選擇的引擎,已廣泛被應(yīng)用于三維游戲、虛擬現(xiàn)實(shí)和Web3D等眾多領(lǐng)域。

      1 信息輸入部分

      1.1 信息輸入部分的結(jié)構(gòu)組成

      信息輸入部分的硬件部分主要由微處理器+傳感器件組合,基本結(jié)構(gòu)如圖1所示。

      三軸加速度傳感器是一種基于慣性原理測(cè)量加速度的電子設(shè)備。大多數(shù)加速度傳感器是根據(jù)壓電效應(yīng)的原理來工作的。壓電效應(yīng)是指對(duì)于不存在對(duì)稱中心的異極晶體加在晶體上的外力除了使晶體發(fā)生形變以外,還將改變晶體的極化狀態(tài),在晶體內(nèi)部建立電場(chǎng)。加速度傳感器利用加速度造成晶體變形、晶體變形又會(huì)產(chǎn)生電壓的特性,計(jì)算產(chǎn)生電壓和所施加的加速度之間的關(guān)系,將加速度轉(zhuǎn)化成電壓輸出。根據(jù)加速度傳感器的具體實(shí)現(xiàn)方式,可分為壓電式、壓阻式、電容式和伺服式,其中使用MEMS微機(jī)電系統(tǒng)工藝的三軸加速度傳感器在體積、價(jià)格和市場(chǎng)占有率方面具有明顯優(yōu)勢(shì)。系統(tǒng)使用三軸加速度計(jì)獲取人體動(dòng)作的三維方向的加速度,從而獲取人體動(dòng)作在三維方向的位移運(yùn)動(dòng)。

      圖1 信息傳輸功能部分硬件結(jié)構(gòu)圖

      三軸陀螺儀傳感器是測(cè)量物體角速度的傳感器。常見的MEMS陀螺儀有雙平衡環(huán)結(jié)構(gòu)、懸臂梁結(jié)構(gòu)、音義結(jié)構(gòu)和振動(dòng)環(huán)結(jié)構(gòu)等,通過被激勵(lì)的振動(dòng)體對(duì)哥氏加速度的敏感測(cè)量角速度,具有很高的分辨率、靈敏度、抗干擾能力和測(cè)量范圍。系統(tǒng)使用三軸陀螺儀傳感器測(cè)量人體動(dòng)作在各個(gè)軸向的角速度,從而獲取人體動(dòng)作的旋轉(zhuǎn)運(yùn)動(dòng)。

      三軸電子羅盤傳感器,又稱三軸數(shù)字羅盤傳感器,在現(xiàn)代技術(shù)條件中作為導(dǎo)航儀器或姿態(tài)傳感器已被廣泛應(yīng)用。電子羅盤與傳統(tǒng)指針式和平衡架結(jié)構(gòu)羅盤相比能耗低、體積小、重量輕、精度高、可微型化。目前,廣為使用的MEMS三軸電子羅盤傳感器具有抗搖動(dòng)和抗振性、航向精度較高和對(duì)干擾場(chǎng)有電子補(bǔ)償、可以集成到控制回路中進(jìn)行數(shù)據(jù)鏈接等優(yōu)點(diǎn),因而廣泛應(yīng)用于航空、航天、機(jī)器人、航海測(cè)量和導(dǎo)航等領(lǐng)域。此外,三軸電子羅盤克服了平面電子羅盤在使用中的嚴(yán)格限制,因?yàn)槿S電子羅盤傳感器在其內(nèi)部加入了傾角傳感器,如果電子羅盤發(fā)生傾斜時(shí)可以對(duì)羅盤進(jìn)行傾斜補(bǔ)償,這樣即使發(fā)生傾斜,測(cè)量數(shù)據(jù)依然準(zhǔn)確無誤。系統(tǒng)使用三軸電子羅盤實(shí)現(xiàn)三維方向的確定。

      人體動(dòng)作捕獲節(jié)點(diǎn)設(shè)計(jì)是基于微處理器為核心的嵌入式系統(tǒng),微處理器通過數(shù)字總線1獲取傳感器的原始運(yùn)動(dòng)數(shù)據(jù),對(duì)傳感器采集的原始運(yùn)動(dòng)數(shù)據(jù)進(jìn)行處理,然后將處理后的數(shù)據(jù)由數(shù)字總線2傳給通信芯片,再經(jīng)過對(duì)數(shù)據(jù)的處理無線發(fā)送出去。數(shù)字總線1實(shí)際上是SPI總線,該總線能對(duì)傳感器數(shù)據(jù)進(jìn)行讀取然后傳輸給微處理器,SPI一共有4條線;CS、SCLK、DI和DOUT。CS為選擇線,只有在CS為低電平時(shí),芯片才接受SPI上的數(shù)據(jù)或向SPI總線發(fā)送數(shù)據(jù)。SCLK是時(shí)鐘控制線,因?yàn)樵赟PI下傳輸數(shù)據(jù)是一位一位的傳輸,因此需要SCLK提供時(shí)鐘脈沖,進(jìn)行時(shí)鐘控制。DI為數(shù)據(jù)輸入線,DOUT為數(shù)據(jù)輸出線,這兩條線是基于SCLK提供的時(shí)鐘控制,發(fā)送或接收數(shù)據(jù)。數(shù)字總線2是異步串行總線,設(shè)計(jì)為微處理器和通信芯片的串口(UART)通信,該總線使用一根線TX發(fā)送數(shù)據(jù)的同時(shí)用另一根線RX接收數(shù)據(jù),實(shí)現(xiàn)按位的數(shù)據(jù)傳輸,使用時(shí)需要設(shè)置波特率、數(shù)據(jù)位、停止位和校驗(yàn)位,設(shè)置串口后即可實(shí)現(xiàn)微處理器和無線芯片的數(shù)據(jù)傳輸。

      具體的節(jié)點(diǎn)實(shí)物如圖2所示。

      圖2 節(jié)點(diǎn)實(shí)物圖

      1.2 信息輸入部分捕獲人體動(dòng)作的原理

      人體動(dòng)作主要分為定向運(yùn)動(dòng)和旋轉(zhuǎn)運(yùn)動(dòng)。陀螺儀是測(cè)量物體角速度的傳感器,當(dāng)陀螺儀隨物體運(yùn)動(dòng)時(shí),陀螺儀能夠測(cè)量物體繞各個(gè)軸轉(zhuǎn)動(dòng)的角速度,通過對(duì)角速度進(jìn)行積分運(yùn)算,就能得到物體旋轉(zhuǎn)的角度。短時(shí)間內(nèi),陀螺儀測(cè)量具有較高的精度,但陀螺儀容易受振動(dòng)等因素的影響而引入測(cè)量噪聲,且陀螺儀的輸出存在漂移,漂移隨著時(shí)間、溫度及其他隨機(jī)因素而變化,通過積分會(huì)使測(cè)量誤差變大,因此陀螺儀不適合長(zhǎng)時(shí)間的動(dòng)態(tài)角度測(cè)量。另外,陀螺儀只能用于運(yùn)動(dòng)物體的角度測(cè)量,如果物體的初始位置存在一定的傾角,則陀螺儀無法感知。使用加速度計(jì)測(cè)量物體的加速度,當(dāng)加速度計(jì)靜止時(shí),其輸出為重力加速度在各個(gè)軸上的分量,裝有加速度計(jì)的物體的傾角發(fā)生變化時(shí),加速度計(jì)的輸出也會(huì)隨之變化,根據(jù)這一原理,通過測(cè)量加速度計(jì)各軸的輸出便可以得出物體的傾角。對(duì)于靜止物體而言,加速度計(jì)測(cè)量的角度十分準(zhǔn)確。但是,一旦物體運(yùn)動(dòng),會(huì)在加速度計(jì)相應(yīng)的敏感軸引入除重力以外的加速度(除非物體處于勻速運(yùn)動(dòng)狀態(tài)),此時(shí)傾角的計(jì)算將會(huì)因物體運(yùn)動(dòng)的加速度影響而變得不準(zhǔn)確,實(shí)際應(yīng)用中,物體不可能長(zhǎng)時(shí)間做勻速運(yùn)動(dòng),因此加速度計(jì)不適合用于測(cè)量運(yùn)動(dòng)物體的傾角。

      從上面的分析不難看出,陀螺儀和加速度計(jì)具有互補(bǔ)性:加速度計(jì)可以測(cè)量靜止物體的傾角并具有較高的準(zhǔn)確性;陀螺儀可以測(cè)量動(dòng)態(tài)物體的角速度并在短時(shí)間內(nèi)具有較高的準(zhǔn)確性。本系統(tǒng)設(shè)計(jì)正是利用其互補(bǔ)性來捕獲人體動(dòng)作,另外使用三軸電子羅盤確定絕對(duì)方向。

      1.3 信息輸入部分的無線傳輸

      藍(lán)牙技術(shù)是一種支持設(shè)備短距離通信的無線電技術(shù)。其最大的特點(diǎn)就是利用近距離的無線連接為通訊設(shè)備終端建立統(tǒng)一的無線連接,從而實(shí)現(xiàn)設(shè)備間無線通訊的目的。藍(lán)牙技術(shù)的通訊工作頻段選在全球通用的2.4 GHz ISM頻段,該頻段允許用戶在4~20 dBm范圍內(nèi)施行功率控制,有效的傳輸范圍為10~100M,這樣的傳輸距離對(duì)于動(dòng)作捕捉系統(tǒng)可以完全滿足要求。同時(shí)藍(lán)牙采用的是 TDMA傳輸模式,能夠以0.625 μs時(shí)隙進(jìn)行數(shù)據(jù)傳輸,傳輸?shù)乃俾士蛇_(dá)1Mb/s。此外,藍(lán)牙技術(shù)中采用了跳頻技術(shù),其可以提高整個(gè)傳輸系統(tǒng)的抗干擾能力。對(duì)于基于MEMS傳感器的動(dòng)作捕捉系統(tǒng),傳感器的采樣頻率為819.2SPS,每個(gè)數(shù)據(jù)占2個(gè)字節(jié),那么15個(gè)傳感器的數(shù)據(jù)傳輸量約為25 KB/s,藍(lán)牙已足以對(duì)其進(jìn)行傳輸處理。此外藍(lán)牙的傳輸距離為 10M,能夠滿足在室內(nèi)進(jìn)行人體動(dòng)作捕獲要求,同時(shí)藍(lán)牙對(duì)串口傳輸提供了友好的支持,因此動(dòng)作捕捉系統(tǒng)中無線數(shù)據(jù)傳輸將利用藍(lán)牙來實(shí)現(xiàn)無線數(shù)據(jù)傳輸。

      藍(lán)牙4.0目前已經(jīng)得到了廣泛的應(yīng)用, 藍(lán)牙4.0實(shí)際是個(gè)三位一體的藍(lán)牙技術(shù),它將3種規(guī)格合而為一,分別是傳統(tǒng)藍(lán)牙、低功耗藍(lán)牙和高速藍(lán)牙技術(shù),這3個(gè)規(guī)格可以組合或者單獨(dú)使用。系統(tǒng)設(shè)計(jì)使用藍(lán)牙4.0的無線通信,在無線傳輸實(shí)時(shí)性、可靠性和低功耗性方面相比其他無線通信有極大優(yōu)勢(shì)。

      2 信息處理部分

      在人體動(dòng)作數(shù)據(jù)被成功采集并傳輸?shù)幕A(chǔ)上,為了實(shí)現(xiàn)對(duì)3D人體模型的精確控制,需要對(duì)人體動(dòng)作原始數(shù)據(jù)進(jìn)行進(jìn)一步的處理,主要包括信息融合與糾偏和坐標(biāo)變換。

      2.1 信息融合與糾偏

      傳感器在數(shù)據(jù)采集過程中難免會(huì)出現(xiàn)數(shù)據(jù)的誤差。一方面,使用陀螺儀傳感器對(duì)人體姿態(tài)進(jìn)行測(cè)量時(shí),在計(jì)算過程中存在誤差累加的可能,導(dǎo)致姿態(tài)數(shù)據(jù)逐漸偏離可修正范圍;另一方面,使用加速度計(jì)與磁場(chǎng)計(jì)測(cè)量肢體運(yùn)動(dòng)過程,會(huì)受到運(yùn)動(dòng)加速度的干擾,無法提供精確的數(shù)據(jù)[9]。因而,本文將以上方式得到的測(cè)量結(jié)果通過擴(kuò)展卡爾曼濾波進(jìn)行融合,充分發(fā)揮使用多種測(cè)量方法的優(yōu)勢(shì),以達(dá)到減少測(cè)量誤差,提高測(cè)量數(shù)據(jù)精度的目的。

      擴(kuò)展卡爾曼濾波技術(shù)被認(rèn)為是一種高濾波性能與小計(jì)算量兼得的濾波技術(shù)[14],在本文中,使用的擴(kuò)展卡爾曼濾波函數(shù)集包括:

      (1) 狀態(tài)一步預(yù)測(cè)函數(shù):

      (2) 一步預(yù)測(cè)均方誤差函數(shù):

      (3) 濾波增益函數(shù):

      (4) 狀態(tài)估計(jì)函數(shù):

      (5) 估計(jì)均方誤差:

      其中,O表示最優(yōu)化的輸出值估計(jì)矩陣,S指代狀態(tài)轉(zhuǎn)移矩陣;X為原始測(cè)量值矩陣;K表示卡爾曼濾波增益矩陣;N表示測(cè)量噪音矩陣;M表示過程噪音矩陣;P表示偏微分矩陣;C為協(xié)方差矩陣。下標(biāo) t 表示時(shí)刻t;t/t–1表示由時(shí)刻t–1計(jì)算出來的時(shí)刻 t 的值。

      2.1.1 濾波狀態(tài)向量的選取

      卡爾曼濾波技術(shù)可分為直接法與間接法兩種,由于間接法所使用的狀態(tài)向量均為誤差量,故誤差估計(jì)的準(zhǔn)確性較高,因而本文選擇間接法進(jìn)行數(shù)據(jù)處理[10]。

      空間姿態(tài)的表示方面,本文選用四元數(shù)進(jìn)行數(shù)據(jù)表示,在實(shí)現(xiàn)全姿態(tài)表述的基礎(chǔ)上,降低了運(yùn)算量,同時(shí)也使得三維空間變換信息的求解過程得以簡(jiǎn)化。

      在獲得傳感節(jié)點(diǎn)采集到的四元數(shù)之后,通過間接卡爾曼濾波方法,以7維向量作為狀態(tài)向量,如式(6)所示。該向量的前四維數(shù)據(jù)是四元數(shù)的各個(gè)成員,余下三維表示由加速度計(jì)和地磁儀數(shù)據(jù)對(duì)陀螺儀數(shù)據(jù)融合濾波后計(jì)算得到的陀螺儀各軸的誤差量。

      根據(jù)上述,最終求得的濾波狀態(tài)向量為:

      2.1.2 狀態(tài)更新值的計(jì)算

      對(duì)陀螺儀輸出數(shù)據(jù)進(jìn)行校準(zhǔn)時(shí),令V=(vx, vy, vz)表示實(shí)際旋轉(zhuǎn)向量,G=(gx, gy, gz)代表陀螺儀的輸出數(shù)據(jù),E=(ex, ey, ez)表示誤差數(shù)據(jù),以上三者之間的關(guān)系可表示為:

      在得到校準(zhǔn)數(shù)據(jù)之后,與濾波狀態(tài)向量相結(jié)合,得到的狀態(tài)預(yù)測(cè)方程表示為:

      其中,(q0,Q1,Q2,Q3)T表示為當(dāng)前時(shí)刻的狀態(tài)更新值,而表示為(q0,Q1,Q2,Q3)T前一時(shí)刻的狀態(tài)更新值。

      2.1.3 得到均方誤差矩陣

      鑒于系統(tǒng)的離散特點(diǎn),慣性傳感單元的測(cè)量工作需要以Δt(Δt足夠小)為周期進(jìn)行更新,以確保數(shù)據(jù)精度,則卡爾曼濾波的狀態(tài)方程為:

      其中,Gn代表陀螺儀輸出的角速度。方程f代表式(8)~(9)的連續(xù)處理,則f對(duì)狀態(tài)向量各成員求偏導(dǎo)數(shù)形成的偏微分矩陣S與過程噪音矩陣M及初始值Ct–1相結(jié)合構(gòu)成的預(yù)測(cè)均方誤差矩陣如式(2)所示,其中M表示陀螺儀的精度誤差均方矩陣,其獲取可由傳感器對(duì)某固定量測(cè)量并進(jìn)行數(shù)字特征計(jì)算得到。

      2.1.4 確定狀態(tài)預(yù)測(cè)值

      卡爾曼濾波的基本原理是通過計(jì)算卡爾曼濾波增益更新均方誤差矩陣和估計(jì)向量。為了計(jì)算濾波增益,需要建立觀測(cè)模型,即求出濾波增益方程中的狀態(tài)向量 P 矩陣,通過 P 矩陣金科建立均方誤差與觀測(cè)值之間的聯(lián)系,進(jìn)而實(shí)現(xiàn)由加速度計(jì)和磁場(chǎng)計(jì)數(shù)據(jù)協(xié)同完成的姿態(tài)陣更新。

      (1) 建立一個(gè)參考坐標(biāo)系,該參考系的X軸正方向指向北方,Y軸正方向指向東方,Z軸指向地心。通過重力加速度在該坐標(biāo)系上投影,以及地磁在水平面與豎直平面上的分量,可以得到重力加速度和地磁場(chǎng)的觀測(cè)函數(shù)集,在通過與加速度計(jì)和磁場(chǎng)測(cè)量的實(shí)際結(jié)果進(jìn)行校準(zhǔn),可以分別求得重力加速度與地磁場(chǎng)觀測(cè)矩陣的雅可比矩陣,分別記為Pja和Pjm。

      (2) 將Pja、Pjm分別代入式(3),即可計(jì)算出重力加速度濾波增益Ka和地磁濾波增益Km。將Ka作為參數(shù),應(yīng)用到式(4)~(5)中,即可得到矯正Roll和Pitch航向角的狀態(tài)估計(jì)方程與加速度計(jì)的均方誤差估計(jì)函數(shù);同理,將Km應(yīng)用到式(4)~(5)中,可計(jì)算出Yaw航向角的狀態(tài)估計(jì)方程以及磁場(chǎng)計(jì)的均方誤差估計(jì)函數(shù)。經(jīng)過矯正與估計(jì)后,最終求得的Ot即是7維濾波狀態(tài)向量在當(dāng)前時(shí)刻的預(yù)測(cè)值,計(jì)算結(jié)果Ct即是加速度計(jì)與磁場(chǎng)計(jì)的測(cè)量均方誤差。綜合上述,在對(duì)Roll、Pitch、Yaw進(jìn)行矯正的過程中,狀態(tài)向量的后三維也得到了更新。

      2.2 坐標(biāo)變換

      為了精確地在3D模型上呈現(xiàn)出人體動(dòng)作,需要選擇合適的坐標(biāo)系作為參考,故需要對(duì)采集到的運(yùn)動(dòng)數(shù)據(jù)進(jìn)行坐標(biāo)變換。通過動(dòng)作數(shù)據(jù)驅(qū)動(dòng)3D模型的過程中,需要用到地磁坐標(biāo)系、位于人體運(yùn)動(dòng)關(guān)節(jié)的傳感器節(jié)點(diǎn)坐標(biāo)系以及虛擬人體模型所處的3D空間坐標(biāo)系。

      地磁坐標(biāo)系通常選擇以地心為原點(diǎn),X軸與Y軸位于赤道平面上,相互垂直;而Z軸則以地磁場(chǎng)中朝向北極的方向?yàn)檎较?。在?qū)動(dòng)模型過程中,由于地磁坐標(biāo)系的影響,使得傳感節(jié)點(diǎn)傳遞給上位機(jī)的采集數(shù)據(jù)存在與運(yùn)動(dòng)信息無關(guān)的初始值,因而在3D模型驅(qū)動(dòng)初始化階段,需要對(duì)模型進(jìn)行標(biāo)定,以消除地磁坐標(biāo)數(shù)據(jù)對(duì)運(yùn)動(dòng)呈現(xiàn)的影響。

      傳感器坐標(biāo)系用來表示傳感節(jié)點(diǎn)在不同方向上測(cè)量到的運(yùn)動(dòng)數(shù)據(jù)的量化數(shù)值及運(yùn)動(dòng)角度信息。在使用這些運(yùn)動(dòng)數(shù)據(jù)驅(qū)動(dòng)虛擬模型時(shí),傳感器坐標(biāo)系需要與虛擬人體關(guān)節(jié)在3D空間中的局部坐標(biāo)系相對(duì)應(yīng)。

      3D空間坐標(biāo)系可分為局部坐標(biāo)系與全局坐標(biāo)系。對(duì)本文所述3D人體模型而言,每個(gè)可運(yùn)動(dòng)關(guān)節(jié)都擁有一個(gè)局部坐標(biāo)系,標(biāo)識(shí)該關(guān)節(jié)以自身為參考的相對(duì)運(yùn)動(dòng);而全局坐標(biāo)系則用以確定各個(gè)關(guān)節(jié)在完整虛擬空間中的絕對(duì)位置。

      不同坐標(biāo)系間的坐標(biāo)變換通常由旋轉(zhuǎn)變換和平移變換結(jié)合而成。旋轉(zhuǎn)變換就是通過與旋轉(zhuǎn)矩陣相乘將某點(diǎn)坐標(biāo)轉(zhuǎn)換到目標(biāo)坐標(biāo)系下,計(jì)算出該點(diǎn)在旋轉(zhuǎn)之后的坐標(biāo);而坐標(biāo)平移則是指在原坐標(biāo)數(shù)據(jù)的基礎(chǔ)上加上平移向量。

      本文所使用的傳感節(jié)點(diǎn)采集數(shù)據(jù)以四元數(shù)的形式表示,以旋轉(zhuǎn)一個(gè)空間向量為例說明四元數(shù)形式下的坐標(biāo)旋轉(zhuǎn)變換:向量(x, y, z)的四元數(shù)表示法為(0, x, y, z),記為T;即設(shè)置四元數(shù)的實(shí)部值為0,其余坐標(biāo)信息填寫到四元數(shù)中相應(yīng)位置。同時(shí),設(shè)記錄旋轉(zhuǎn)信息的四元數(shù)為Q,通過四元數(shù)信息實(shí)現(xiàn)旋轉(zhuǎn)的公式為:

      T ′指代旋轉(zhuǎn)后的四元數(shù),Q–1表示旋轉(zhuǎn)數(shù)四元數(shù)的逆,×表示四元數(shù)乘法;四元數(shù)的乘法不滿足交換律,旋轉(zhuǎn)時(shí)需嚴(yán)格按照式(11)進(jìn)行計(jì)算。

      3D空間中的平移變換直接以三維向量的形式進(jìn)行計(jì)算:設(shè)P(x, y, z)為待平移的坐標(biāo),平移向量ΔP(Δx,Δy,Δz),P′指代平移后的坐標(biāo),則坐標(biāo)平移變換的計(jì)算公式為:

      以肘關(guān)節(jié)采集的旋轉(zhuǎn)數(shù)據(jù)驅(qū)動(dòng)人體模型前臂為例,主要包括以下幾個(gè)環(huán)節(jié):

      (1) 人體姿態(tài)的初始化。為了確保各關(guān)節(jié)運(yùn)動(dòng)信息的準(zhǔn)確性,需要人體配合呈初始化姿態(tài):雙腳并攏,目視軀體正前方,手臂平展與兩肩同高,五指并攏伸直,掌心向下,呈“T”形。

      (2) 運(yùn)動(dòng)關(guān)節(jié)的初始化標(biāo)定。計(jì)算出肘關(guān)節(jié)相對(duì)于全局坐標(biāo)系原點(diǎn)的平移量,以向量形式表示,記為T,對(duì)T求反,記為–T并保存。

      人體保持初始化姿態(tài)下,肘關(guān)節(jié)傳感節(jié)點(diǎn)所采集的第一組運(yùn)動(dòng)數(shù)據(jù)將作為對(duì)應(yīng)關(guān)節(jié)的輔助標(biāo)定數(shù)據(jù),記為I。如前文所述,I記錄的數(shù)據(jù)是人體在靜止?fàn)顟B(tài)下,肘關(guān)節(jié)傳感節(jié)點(diǎn)受地磁影響的數(shù)據(jù)。為了消除地磁的影響,對(duì)I求逆,記為I–1并保存。以此為基礎(chǔ),肘關(guān)節(jié)的后續(xù)運(yùn)動(dòng)數(shù)據(jù)在上位機(jī)端與I–1相乘,即可消除地磁對(duì)采集數(shù)據(jù)造成的影響。

      (3) 局部坐標(biāo)系下的旋轉(zhuǎn)變換。新的肘關(guān)節(jié)運(yùn)動(dòng)數(shù)據(jù)到來時(shí),首先與I–1相乘消除地磁影響,然后根據(jù)式(11)進(jìn)行肘關(guān)節(jié)的旋轉(zhuǎn)與腕關(guān)節(jié)新坐標(biāo)的計(jì)算。

      (4) 全局坐標(biāo)系下的平移變換。通過之前保存的逆向平移矩陣–T,計(jì)算出在全局坐標(biāo)系下的腕關(guān)節(jié)的準(zhǔn)確坐標(biāo)值。

      按照上述過程,遵循“先處理父節(jié)點(diǎn),再處理子節(jié)點(diǎn)”的原則,即可實(shí)現(xiàn)3D模型的完整動(dòng)作驅(qū)動(dòng)過程。

      3 信息呈現(xiàn)部分

      3.1 平臺(tái)及工具介紹

      在3D呈現(xiàn)程序的具體實(shí)現(xiàn)過程中,本文選擇Unity3D作為開發(fā)工具。Unity3D支持目前主流的OPENGL和DirectX技術(shù),具有優(yōu)秀的設(shè)計(jì)環(huán)境、方便快捷的設(shè)計(jì)流程和易于操作的場(chǎng)景編輯器,并能夠良好支持主流3D模型文件(如.max文件、.fbx文件等),同時(shí),其多平臺(tái)應(yīng)用支持等優(yōu)良特性使其逐漸成為 3D游戲和虛擬仿真項(xiàng)目?jī)?yōu)先選擇的引擎,廣泛被應(yīng)用于三維游戲、虛擬現(xiàn)實(shí)和 Web3D等眾多領(lǐng)域。

      建模方面,本文設(shè)計(jì)過程中使用了內(nèi)容形式豐富且具有良好平臺(tái)支持性的.fbx文件格式,.fbx格式來源于Motion Builder,該軟件是三維動(dòng)作設(shè)計(jì)制作軟件。.fbx文件為不同三維建模軟件間進(jìn)行的模型、材質(zhì)、動(dòng)作、攝影機(jī)信息和燈光信息的相互導(dǎo)入與導(dǎo)出提供了非常靈活的支持。對(duì)Unity3D引擎而言,使用.fbx作為模型文件格式,保證了Unity3D引擎與其他3D建模工具之間的良好交互性。

      3.2 Unity3D引擎中的模型導(dǎo)入

      Unity3D為模型設(shè)置提供了諸多便利的功能。如節(jié)點(diǎn)的鎖定、整體剛性的設(shè)置及肢體動(dòng)作幅度的設(shè)定等。

      為了保證呈現(xiàn)效果,本文使用的人體模型選擇了16處運(yùn)動(dòng)部位進(jìn)行標(biāo)記,如圖3所示。

      圖3 人體運(yùn)動(dòng)部位結(jié)構(gòu)設(shè)計(jì)圖

      在Unity3D引擎中,借助Avatar動(dòng)畫系統(tǒng),使得運(yùn)動(dòng)部位節(jié)點(diǎn)分布情況以更直觀、更形象的方式呈現(xiàn)(見圖4)。

      圖4 Unity3D中的運(yùn)動(dòng)部位結(jié)構(gòu)圖

      為了保證模型動(dòng)作的合理性,需要根據(jù)人體運(yùn)動(dòng)基本原理對(duì)各個(gè)虛擬關(guān)節(jié)的運(yùn)動(dòng)幅度進(jìn)行設(shè)置,進(jìn)而避免出現(xiàn)扭曲的肢體動(dòng)作。Unity3D引擎中同樣提供了直觀的設(shè)置界面。如圖5所示。

      圖5 Unity3D中的關(guān)節(jié)運(yùn)動(dòng)幅度設(shè)置界面

      3.3 實(shí)時(shí)動(dòng)作信息的呈現(xiàn)

      實(shí)時(shí)動(dòng)作的呈現(xiàn)具有靈活性大、實(shí)時(shí)性要求高等特點(diǎn),以往的呈現(xiàn)方法難以提供全面的支持。Unity3D引擎與Mono開發(fā)平臺(tái)相結(jié)合,為不同操作系統(tǒng)下的開發(fā)者提供了C#、JavaScript等多種主流開發(fā)技術(shù)的支持。開發(fā)者通過自己熟悉的開發(fā)語言,以腳本的形式,實(shí)現(xiàn)數(shù)據(jù)傳輸、數(shù)據(jù)加工、模型控制等不同環(huán)節(jié)的功能需求,使得代碼的可移植性與可維護(hù)性得到提升。

      在Unity3D中,人體運(yùn)動(dòng)部位模型的各個(gè)關(guān)節(jié)以“層次樹”的形式進(jìn)行了直觀展示。開發(fā)者可以通過各關(guān)節(jié)所對(duì)應(yīng)的關(guān)節(jié)名稱直接在腳本中獲取各個(gè)關(guān)節(jié)對(duì)象進(jìn)行針對(duì)性的操作(如圖6)。

      圖6 Unity3D中的層次化骨骼關(guān)節(jié)結(jié)構(gòu)圖

      針對(duì)所需要進(jìn)行的不同坐標(biāo)系間的坐標(biāo)變換工作,Unity3D引擎提供了豐富的API函數(shù),使得坐標(biāo)變換等復(fù)雜的數(shù)據(jù)處理工作得以簡(jiǎn)化,完成效率得到提高。

      在實(shí)現(xiàn)運(yùn)動(dòng)肘部旋轉(zhuǎn)整個(gè)前臂的模擬呈現(xiàn)中,通過將節(jié)點(diǎn)固定在肘部,實(shí)現(xiàn)對(duì)肘部運(yùn)動(dòng)信息的采集。同時(shí),在 Unity3D引擎中,通過 GameObject類中的 Find()方法,獲得對(duì)指定名稱關(guān)節(jié)的控制對(duì)象,進(jìn)而具備了在單一關(guān)節(jié)上應(yīng)用運(yùn)動(dòng)數(shù)據(jù)的能力。

      為了明顯地展示模型驅(qū)動(dòng)效果,在實(shí)驗(yàn)過程中,在保持全身其他關(guān)節(jié)靜止的狀況下,針對(duì)性地對(duì)肘部關(guān)節(jié)進(jìn)行處理。3D呈現(xiàn)效果與真實(shí)的人體動(dòng)作效果的對(duì)比見圖7~8。

      4 結(jié) 論

      本文以MEMS傳感相關(guān)技術(shù)為理論基礎(chǔ),以最新的價(jià)格低廉的集成電子模塊為實(shí)驗(yàn)基礎(chǔ),實(shí)現(xiàn)了基于多傳感器節(jié)點(diǎn)的人體運(yùn)動(dòng)信息的采集與融合、節(jié)點(diǎn)與匯聚節(jié)點(diǎn)的數(shù)據(jù)傳輸、虛擬人體模型實(shí)時(shí)動(dòng)作呈現(xiàn)程序;實(shí)現(xiàn)了從數(shù)據(jù)測(cè)量到采集,再到精確模擬呈現(xiàn)的全過程。提出了陀螺儀與空間羅盤同時(shí)測(cè)量,并借助擴(kuò)展卡爾曼融合濾波技術(shù)實(shí)現(xiàn)人體動(dòng)作信息精確采集的方案。根據(jù)實(shí)驗(yàn)結(jié)果,該方案的測(cè)量精度與性能較單一傳感技術(shù)的采集結(jié)果有明顯地提高,比目前主流的基于MEMS傳感器的人體運(yùn)動(dòng)捕獲系統(tǒng)更具性價(jià)比,普適性更好。同時(shí),與目前新興的3D圖形引擎相結(jié)合,設(shè)計(jì)實(shí)現(xiàn)了具有良好呈現(xiàn)精度與跨平臺(tái)特性的實(shí)時(shí)人體動(dòng)作呈現(xiàn)程序。

      圖7 上抬前臂動(dòng)作的呈現(xiàn)效果

      圖8 前臂向下旋轉(zhuǎn)的呈現(xiàn)效果

      [1] 劉劍鋒. 虛擬環(huán)境下幾種三維交互技術(shù)的研究[D]. 杭州: 浙江大學(xué), 2010.

      [2] 李曉丹, 肖 明, 曾 莉. 人體動(dòng)作捕捉技術(shù)綜述以及一種新的動(dòng)作捕捉方案陳述[J]. 中國(guó)西部科技, 2011, 10(15): 35-37.

      [3] 孫新領(lǐng), 李揚(yáng)波, 馬紹惠. 光學(xué)式運(yùn)動(dòng)捕捉技術(shù)在人體動(dòng)畫中的應(yīng)用研究[J]. 河南機(jī)電高等??茖W(xué)校學(xué)報(bào), 2013, 21(3): 17-19, 23.

      [4] 譚艾迪, 曾 明. 基于深度信息探測(cè)的三維動(dòng)作重建與分析[J]. 江西科學(xué), 2013, 31(5): 682-686.

      [5] 蔡美玲. 三維人體運(yùn)動(dòng)分析與動(dòng)作識(shí)別方法[D]. 長(zhǎng)沙:中南大學(xué), 2013.

      [6] 侯祖貴. 基于慣性傳感器的人體動(dòng)作分析與識(shí)別[D].哈爾濱: 哈爾濱工程大學(xué), 2013.

      [7] 蹇 彪. 基于慣性傳感器的人體運(yùn)動(dòng)姿態(tài)三維重構(gòu)[D].哈爾濱: 哈爾濱工程大學(xué), 2013.

      [8] 李啟雷, 金文光, 耿衛(wèi)東. 基于無線慣性傳感器的人體動(dòng)作捕獲方法[J]. 浙江大學(xué)學(xué)報(bào): 工學(xué)版, 2012, 16(2): 280-285.

      [9] 饒 勇. 基于傳感網(wǎng)絡(luò)的人體動(dòng)作捕獲裝置設(shè)計(jì)與實(shí)現(xiàn)[D]. 成都: 電子科技大學(xué), 2013.

      [10] 龔 勇. 基于多傳感器節(jié)點(diǎn)的人體動(dòng)作捕獲系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 成都: 電子科技大學(xué), 2013.

      [11] 劉 博. 基于MEMS傳感器的動(dòng)作捕捉系統(tǒng)開發(fā)設(shè)計(jì)[D]. 北京: 北京理工大學(xué), 2011.

      [12] 趙正旭, 戴 歡, 趙文彬, 等. 基于慣性動(dòng)作捕捉的人體運(yùn)動(dòng)姿態(tài)模擬[J]. 計(jì)算機(jī)工程, 2012, 38(5): 5-8.

      [13] 劉曉祥. 基于加速度傳感器的動(dòng)作捕捉系統(tǒng)的研究[D].長(zhǎng)春: 吉林大學(xué), 2011.

      [14]Suh YS. Orientation estimation using a quaternion-based indirect Kalman filter with adaptive estimation of external acceleration [J]. IEEE Transactions on Instrumentation andMeasurement, 2010, 59(12):3296-3305.

      [15] Zhang Zhiqiang, Wu Jiankang. A novel hierarchical information fusionMethod for three-dimensional upper limbMotion estimation [J]. IEEE Transactions on Instrumentation andMeasurement, 2011, 60(11):3709-3719.

      HumanMotion CaptureSystem Based onMEMSSensors and Unity3D

      Zhang Heng, Zhang Zeyu
      (School of Computer and InformationScience,Southwest University, Chongqing400715, China)

      A natural, flexible way for human beings to interact with computers isMain goal to human-computer interaction technology, which is remarkably developing. This goal requires computers capture and understand human?sMotion precisely, under this background,Motion capture technology was proposed. As future goal, computer users couldSend information, commands to computers not only by clicking and typing, but also by gesture, facial expression and other body expressions. To achieve this,Motion capture technology is definitely indispensable. Currently existingMotion captureSystemsMostly work for 3D video, which have high costs. However, the improving integration ofMEMSSensor brings lower cost andMore demands toMotion captureSystems. With integrating existing technologies, this paper proposes a universalMotion capture prototype, which implements the complete process from dataMeasuring, transmitting toMotionSimulating presence based on inertialSensor nodes.

      MEMSSensor; human-computer interaction;Motion capture

      TP 391.4

      A

      2095-302X(2015)02-0274-08

      2014-08-11;定稿日期:2014-08-20

      中央高校基本科研業(yè)務(wù)費(fèi)專項(xiàng)資金資助項(xiàng)目(SWU113066, XDJK2015C023, XDJK2012C019);2014Google產(chǎn)學(xué)合作專業(yè)綜合改革資助項(xiàng)目(20710164)

      張 衡(1976–),男,安徽廬江人,副教授,博士。主要研究方向?yàn)榭纱┐饔?jì)算、人機(jī)交互、無線感知網(wǎng)。Email:dahaizhangheng@163.com

      猜你喜歡
      陀螺儀加速度計(jì)坐標(biāo)系
      基于加速度計(jì)的起重機(jī)制動(dòng)下滑量測(cè)量
      基于EMD的MEMS陀螺儀隨機(jī)漂移分析方法
      解密坐標(biāo)系中的平移變換
      坐標(biāo)系背后的故事
      我國(guó)著名陀螺儀專家——林士諤
      基于遺傳算法的加速度計(jì)免轉(zhuǎn)臺(tái)標(biāo)定方法
      基于重心坐標(biāo)系的平面幾何證明的探討
      微機(jī)械陀螺儀概述和發(fā)展
      常溫下硅微諧振加速度計(jì)零偏穩(wěn)定性的提高
      MEMS三軸陀螺儀中不匹配干擾抑制方法
      龙陵县| 巴彦县| 德安县| 富蕴县| 宕昌县| 潮州市| 新巴尔虎左旗| 满洲里市| 河东区| 湛江市| 洱源县| 襄垣县| 长汀县| 麻栗坡县| 阿荣旗| 九寨沟县| 定兴县| 汤原县| 芦溪县| 新兴县| 常山县| 宁化县| 光山县| 汾阳市| 桦川县| 易门县| 巴塘县| 盈江县| 嘉义县| 泸水县| 任丘市| 密云县| 沿河| 临潭县| 丰原市| 清河县| 扶风县| 淳化县| 海兴县| 天台县| 太仓市|