• 
    

    
    

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

      ?

      適用于慣性動(dòng)作捕捉與復(fù)現(xiàn)系統(tǒng)的軌跡捕捉算法及其實(shí)現(xiàn)*

      2018-06-12 01:48:44張艷艷車曉蕊楊文卿
      傳感技術(shù)學(xué)報(bào) 2018年5期
      關(guān)鍵詞:零速慣性姿態(tài)

      蘭 洋,李 杰,*,張艷艷,車曉蕊,楊文卿

      (1.中北大學(xué)儀器科學(xué)與動(dòng)態(tài)測(cè)試教育部重點(diǎn)實(shí)驗(yàn)室,太原 030051;2.蘭州資源環(huán)境職業(yè)技術(shù)學(xué)院,蘭州 730000)

      基于慣性傳感器原理的人體動(dòng)作捕捉系統(tǒng)以其實(shí)時(shí)性好、環(huán)境適應(yīng)性強(qiáng)、體積小穿戴方便、成本低等特點(diǎn)被廣泛應(yīng)用于電子游戲、康復(fù)醫(yī)學(xué)、影視作品創(chuàng)作、運(yùn)動(dòng)分析以及非物質(zhì)文化遺產(chǎn)保護(hù)等領(lǐng)域。慣性動(dòng)作捕捉與復(fù)現(xiàn)系統(tǒng)涉及三方面技術(shù):動(dòng)作捕捉、軌跡捕捉、動(dòng)作復(fù)現(xiàn)[1-2]。

      通常行人的軌跡捕捉算法采用零速修正來抑制捷聯(lián)慣性導(dǎo)航解算過程中的位置誤差、速度誤差、姿態(tài)誤差,以到達(dá)較好的解算效果[3-5]。慣性動(dòng)作捕捉與復(fù)現(xiàn)系統(tǒng)最終目的是把捕捉的動(dòng)作和軌跡數(shù)據(jù)導(dǎo)入PC端進(jìn)行人體模型的動(dòng)畫復(fù)現(xiàn),其中軌跡數(shù)據(jù)驅(qū)動(dòng)人體模型進(jìn)行空間移動(dòng),而由于零速檢測(cè)不準(zhǔn)確導(dǎo)致姿態(tài)修正延時(shí),Kalman濾波器誤差補(bǔ)償不充分等原因,導(dǎo)致捕捉到的軌跡不夠平滑,甚至嚴(yán)重畸變,且定位誤差大[6-8],導(dǎo)致最終PC端人體模型空間移動(dòng)時(shí)產(chǎn)生嚴(yán)重的抖動(dòng)或位置跳變。

      本文首先對(duì)動(dòng)作捕捉技術(shù)方案作了簡(jiǎn)要說明,然后針對(duì)零速檢測(cè)過程中出現(xiàn)的誤檢測(cè)問題提出了一種改進(jìn)的零速檢測(cè)算法,同時(shí)在Kalman濾波算法中引入姿態(tài)深度修正模塊,在上述基礎(chǔ)上構(gòu)建了完整的基于改進(jìn)零速檢測(cè)的軌跡捕捉算法框架,最后通過實(shí)物試驗(yàn)從精度和穩(wěn)定性兩方面驗(yàn)證了軌跡捕捉算法的可行性。

      1 慣性動(dòng)作捕捉系統(tǒng)整體方案

      慣性動(dòng)作捕捉與復(fù)現(xiàn)系統(tǒng)包括三方面技術(shù):動(dòng)作捕捉、軌跡捕捉、動(dòng)作復(fù)現(xiàn)。其中動(dòng)作捕捉是利用分布在人體身上的慣性傳感器節(jié)點(diǎn)測(cè)量出各個(gè)關(guān)節(jié)點(diǎn)相對(duì)于根節(jié)點(diǎn)的位置信息。而軌跡捕捉則是通過慣性傳感器節(jié)點(diǎn)信息計(jì)算出根節(jié)點(diǎn)的絕對(duì)位置。中間節(jié)點(diǎn)HUB對(duì)數(shù)據(jù)按規(guī)定格式整合。最終輸入PC端人體模型中,驅(qū)動(dòng)人體模型以根節(jié)點(diǎn)為基準(zhǔn)的動(dòng)作復(fù)現(xiàn)和空間移動(dòng)。

      圖1 系統(tǒng)技術(shù)方案

      2 基于改進(jìn)零速檢測(cè)的軌跡捕捉算法

      2.1 改進(jìn)的零速檢測(cè)

      2.1.1 零速區(qū)間的粗檢測(cè)

      零速檢測(cè)的目的是檢測(cè)出人體在行走過程中腳掌與地面完全接觸的一系列時(shí)間區(qū)間,并認(rèn)為在該區(qū)間內(nèi)腳部速度為零,將零速作為高精度的速度觀測(cè)量進(jìn)行狀態(tài)誤差估計(jì),不斷地對(duì)行走過程中的導(dǎo)航誤差進(jìn)行修正,達(dá)到抑制慣導(dǎo)解算誤差累積的目的,所以零速區(qū)間檢測(cè)的精度將直接影響最終軌跡捕捉的效果。

      綜合考慮動(dòng)作捕捉應(yīng)用場(chǎng)景,選用基于陀螺儀數(shù)據(jù)和加速度數(shù)據(jù)組合的方式進(jìn)行零速檢測(cè),此種檢測(cè)方法在濕滑、顛簸環(huán)境以及特殊步態(tài)下,如上下樓,檢測(cè)效果優(yōu)于單一數(shù)據(jù)源檢測(cè)法[9-10]。其檢測(cè)統(tǒng)計(jì)量計(jì)算的數(shù)學(xué)表達(dá)如下:

      (1)

      根據(jù)大量試驗(yàn)設(shè)置合理閾值,檢測(cè)統(tǒng)計(jì)量Tk大于閾值的部分則被檢測(cè)為擺動(dòng)區(qū),小于閾值的部分檢測(cè)為零速區(qū),如式(2):

      (2)

      式中:ztk為檢測(cè)結(jié)果,‘1’表示為零速,‘0’則表示擺動(dòng),threshold為閾值。

      實(shí)際上,人在行走過程中并不存在真正的零速,因?yàn)榧词乖谀_掌與地面完全接觸的時(shí)間內(nèi),由于腳部的旋轉(zhuǎn)運(yùn)動(dòng)、切向加速度以及傳感器的測(cè)量誤差等原因,造成一部分本應(yīng)處于零速區(qū)間內(nèi)的檢測(cè)統(tǒng)計(jì)量Tk在閾值threshold上下波動(dòng),其局部上揚(yáng)部分會(huì)造成誤檢測(cè)。

      圖2 零速誤檢測(cè)試驗(yàn)圖

      圖2為成年男性行走時(shí)由組合檢測(cè)法得到的檢測(cè)數(shù)據(jù),其步頻為100步/分,其中圖2(a)為檢測(cè)統(tǒng)計(jì)量Tk的圖像,局部放大圖中紅色曲線為其中一個(gè)零速區(qū)間的統(tǒng)計(jì)量值,而黑色直線為檢測(cè)閾值threshold。圖2(b)為檢測(cè)結(jié)果zt的圖像,其中‘1’表示零速,‘0’表示擺動(dòng),其局部放大圖與圖2(a)中局部放大區(qū)域相對(duì)應(yīng)。因此,由于圖2(a)統(tǒng)計(jì)量Tk圍繞閾值的局部上揚(yáng)波動(dòng)造成了圖2(b)中的誤檢,即把零速區(qū)的一部分誤檢為擺動(dòng)區(qū)(下稱偽擺動(dòng)區(qū))。

      上述誤檢測(cè)廣泛地存在于零速檢測(cè)結(jié)果中,最終導(dǎo)致算法不能對(duì)行走過程中的位置、速度、姿態(tài)誤差進(jìn)行及時(shí)地修正。這是導(dǎo)致捕捉軌跡粗糙的一個(gè)重要原因。

      2.1.2 零速區(qū)間的精檢測(cè)

      人正常行走的步伐周期分為零速區(qū)和擺動(dòng)區(qū),根據(jù)趙紅宇等人的研究[11],在一個(gè)步伐周期內(nèi),零速區(qū)和擺動(dòng)區(qū)長(zhǎng)度分別占整個(gè)步伐周期的1/3和2/3,而上述誤檢測(cè)得到的偽擺動(dòng)區(qū)實(shí)為零速區(qū)的一部分,所以實(shí)際上夾雜在擺動(dòng)區(qū)間中的偽擺動(dòng)區(qū)長(zhǎng)度值很小,可作為異常值處理。對(duì)零速粗檢測(cè)結(jié)果zt進(jìn)行處理得到:

      tnon_zupt=(l1,l2,…,li,…,ln)

      (3)

      式中:tnon_zupt為粗檢測(cè)得到的擺動(dòng)區(qū)長(zhǎng)度序列(包含偽擺動(dòng)區(qū)),li為零速粗檢測(cè)結(jié)果中某個(gè)擺動(dòng)區(qū)間的長(zhǎng)度值。

      根據(jù)人體行走統(tǒng)計(jì)規(guī)律,人在某一段正常行走的過程中其擺動(dòng)區(qū)間的長(zhǎng)度值序列即tnon_zupt服從正態(tài)分布,則根據(jù)拉依達(dá)準(zhǔn)則法,tnon_zupt滿足式(4):

      P(|tnon_zupt-μ|<3σ)≥99.997

      (4)

      式中:σ和μ分別為tnon_zupt的方差和均值,P(·)表示對(duì)括號(hào)內(nèi)式子求概率。

      而tnon_zupt中偽擺動(dòng)區(qū)間長(zhǎng)度值作為異常值不滿足式(4),利用MATLAB可通過式(5)對(duì)偽擺動(dòng)區(qū)進(jìn)行定位:

      |tnon_zupt-μ|>3σ

      (5)

      式中:σ和μ同式(4)。

      最終將zt中誤檢測(cè)得到的偽擺動(dòng)‘0’替換為零速‘1’從而實(shí)現(xiàn)零速精檢測(cè)。

      2.2 Kalman濾波算法

      2.1.1Kalman濾波器的建立和參數(shù)設(shè)置

      上文中零速精檢測(cè)出的零速可視為精度極高的速度值,利用3個(gè)狀態(tài)量間的相互耦合可修正位置、速度、姿態(tài)誤差。本文僅選取位置、速度、姿態(tài)作為卡爾曼濾波器狀態(tài)量即:

      X=[pos velo alt]

      (6)

      狀態(tài)方程為:

      Xk=AXk-1+wk-1

      (7)

      式中:A為狀態(tài)轉(zhuǎn)移矩陣,wk-1為過程激勵(lì)噪聲。

      利用檢測(cè)出的零速構(gòu)建三維偽觀測(cè)量,對(duì)位置、姿態(tài)誤差進(jìn)行估計(jì)。觀測(cè)方程如下:

      Zk=HXk+vk

      (8)

      式中:H為觀測(cè)矩陣,vk為觀測(cè)噪聲。

      卡爾曼濾波器相當(dāng)于誤差估計(jì)器,可用每個(gè)步伐周期中的零速估計(jì)出上一個(gè)步伐周期中積累的導(dǎo)航誤差,通過卡爾曼濾波器的每次更新計(jì)算可以對(duì)狀態(tài)量進(jìn)行修正,KF算法執(zhí)行過程如下:

      時(shí)間更新:

      (9)

      測(cè)量更新:

      (10)

      Q=diag([(σf)T,(σw)T]2)R=diag((σv)2) >

      (11)

      2.1.2 姿態(tài)角的深度修正

      由式(10)中的卡爾曼濾波器表達(dá)式,即:

      (12)

      通過式(12)可得出修正后的狀態(tài)量,但實(shí)際得到的軌跡難以達(dá)到動(dòng)作復(fù)現(xiàn)的要求,就整體軌跡而言,定位精度依然較低,局部來看體現(xiàn)在軌跡的明顯波動(dòng)。因此需要進(jìn)一步對(duì)姿態(tài)進(jìn)行修正。

      由式(12)可知,狀態(tài)誤差即為位置、速度、姿態(tài)誤差為:

      (13)

      其中姿態(tài)誤差表示如下:

      Δalt=[ψ θ γ]

      (14)

      由慣性導(dǎo)航原理可知,當(dāng)偏航、俯仰、滾轉(zhuǎn)角都為小角時(shí),可忽略姿態(tài)變換矩陣中小角間的高階小量,此時(shí)旋轉(zhuǎn)后坐標(biāo)系的最終角位置與旋轉(zhuǎn)次序無關(guān)[12-13]。則姿態(tài)修正矩陣可表示為:

      (15)

      (16)

      2.1.3 基于ZUPT的軌跡捕捉算法執(zhí)行流程

      綜上所述,本文所述基于零速修正(ZUPT)的軌跡捕捉算法框架如圖3所示。

      圖3 基于ZUPT的軌跡捕捉算法框架

      由圖3可知,在算法執(zhí)行進(jìn)程中,首先進(jìn)行時(shí)間更新,當(dāng)處于非零速狀態(tài)時(shí),直接由時(shí)間更新得到的導(dǎo)航參數(shù),輸出該時(shí)刻的位置、速度、姿態(tài)。而當(dāng)檢測(cè)出零速時(shí),時(shí)間更新得到的導(dǎo)航參數(shù)則不作為最終結(jié)果輸出,而是連同計(jì)算出的濾波器參數(shù)傳遞給下一步進(jìn)行測(cè)量更新,通過卡爾曼濾波器方程對(duì)狀態(tài)量進(jìn)行修正,并單獨(dú)對(duì)姿態(tài)進(jìn)行深度修正最終輸出位置、速度、姿態(tài)。

      3 試驗(yàn)驗(yàn)證

      為驗(yàn)證動(dòng)作捕捉系統(tǒng)軌跡捕捉算法可行性,設(shè)計(jì)了一個(gè)簡(jiǎn)易鞋式試驗(yàn)設(shè)備,試驗(yàn)使用的硬件主控單元為STM32單片機(jī),MEMS慣性測(cè)量單元采用價(jià)格便宜的MPU6050,其中陀螺量程為±2 000 (°)/s,加速度計(jì)量程為±4gn??刂茢?shù)據(jù)采樣頻率為250 Hz。由于采樣率較低,選取零速檢測(cè)窗口大小為3,經(jīng)過大量試驗(yàn),設(shè)置零速粗檢測(cè)的檢測(cè)閾值為30 000可以最大限度地減少誤檢測(cè)。本文設(shè)計(jì)了兩組試驗(yàn)分別驗(yàn)證軌跡算法的精度和穩(wěn)定性。

      3.1 軌跡算法精度試驗(yàn)

      3.1.1 零速區(qū)間的檢測(cè)精度

      精度試驗(yàn)中,身高為178 cm的試驗(yàn)人員采用約60步/min的步頻進(jìn)行了繞八字形走試驗(yàn)一圈,總行程約為70 m,下面進(jìn)行相關(guān)分析。

      圖4中紅色方形曲線為檢測(cè)出的零速區(qū)間,而藍(lán)色曲線為X軸陀螺儀原始數(shù)據(jù),其中圖4(a)為零速粗檢測(cè)的結(jié)果,圖4(b)為零速精檢測(cè)后的結(jié)果。本次試驗(yàn)中經(jīng)過粗檢測(cè)后,有幾處誤檢測(cè),分別為在開始行走后的11.352 s、21.384 s和24.772 s時(shí)刻,圖4(a)中局部圖為后兩個(gè)出現(xiàn)誤檢測(cè)的時(shí)刻。經(jīng)過零速精檢測(cè)后,由圖4(b)局部圖可知誤檢測(cè)被完全消除,同時(shí)可看出,檢測(cè)出的零速區(qū)間與陀螺零速時(shí)刻的輸出數(shù)據(jù)高度契合。

      圖4 零速精檢測(cè)前后效果對(duì)比圖

      3.1.2 姿態(tài)角深度修正的試驗(yàn)效果

      圖5(a)和圖5(b)分別為姿態(tài)角僅通過Kalman濾波器測(cè)量更新和經(jīng)過深度修正后得到的軌跡圖:

      本次軌跡測(cè)試時(shí),只進(jìn)行了水平對(duì)準(zhǔn),而將初始航向角設(shè)為0。圖5中紅色方圈表示起點(diǎn),箭頭方向代表八字繞行的行走方向。圖5(b)中軌跡終點(diǎn)與軌跡起點(diǎn)距離小于0.5 m,其定位誤差在行程的1%內(nèi),達(dá)到了比較好的效果,而圖5(a)中軌跡的起點(diǎn)和終點(diǎn)距離約為1.6 m,定位誤差超過了2%。同時(shí)由圖5中兩圖對(duì)比可見,經(jīng)過姿態(tài)深度修正后得到的軌跡平滑度明顯優(yōu)于僅進(jìn)行濾波器補(bǔ)償?shù)能壽E,從而在一定程度上減少了 在動(dòng)畫復(fù)現(xiàn)過程中人體模型抖動(dòng)和位置跳變,可達(dá)到較好的復(fù)現(xiàn)效果。

      進(jìn)一步,對(duì)卡爾曼濾波器每次更新后的后驗(yàn)誤差協(xié)方差開方后得到三軸位置誤差、三軸速度誤差以及三軸姿態(tài)誤差并作圖如圖6所示。

      圖5 姿態(tài)深度修正前后軌跡圖

      圖6 三軸導(dǎo)航信息誤差圖

      由圖6中位置誤差可以看出,三軸位置誤差處于極為緩慢的發(fā)散中,幾乎不影響動(dòng)畫復(fù)現(xiàn)的效果。本文采用改進(jìn)的零速檢測(cè)極大地提高了檢測(cè)精度,可對(duì)速度誤差進(jìn)行更為精確地修正,由圖6速度誤差,三軸速度誤差周期性地保持在0.004 2左右,說明周期性的測(cè)量更新抑制了速度誤差發(fā)散。圖6中姿態(tài)誤差中滾轉(zhuǎn)和俯仰角誤差基本保持不變,說明軌跡捕捉算法誤差修正效果明顯,相比之下偏航角誤差雖然小,但是處于相對(duì)快速的發(fā)散中,隨著導(dǎo)航時(shí)間的增加,航向角誤差將會(huì)成為導(dǎo)航解算過程中的主要誤差源,因此后續(xù)考慮引入磁傳感器對(duì)航向角誤差進(jìn)行估計(jì)進(jìn)一步修正航向角誤差。

      3.2 軌跡算法穩(wěn)定性試驗(yàn)

      圖7為三次繞行八字路線后計(jì)算得到的軌跡,由圖,三次行走的軌跡基本重合。整個(gè)行程約為210 m,行走時(shí)長(zhǎng)為165 s,終點(diǎn)與起點(diǎn)坐標(biāo)差為0.38 m,定位誤差在1%以內(nèi)。本文所述軌跡算法在較長(zhǎng)的行走路程中能得到較為穩(wěn)定的軌跡,即軌跡算法具有較好的穩(wěn)定性。

      圖7 穩(wěn)定性測(cè)試軌跡圖

      4 結(jié)論

      本文通過介紹系統(tǒng)技術(shù)方案闡明了動(dòng)作捕捉系統(tǒng)中動(dòng)作捕捉、軌跡捕捉、動(dòng)作復(fù)現(xiàn)的關(guān)系。進(jìn)而為滿足捕捉軌跡的平滑度對(duì)零速檢測(cè)算法進(jìn)行了改進(jìn),從而大大提高了零速檢測(cè)的可靠性,在此基礎(chǔ)之上構(gòu)建了完成的算法框架,并在算法中對(duì)軌跡捕捉姿態(tài)角進(jìn)行了深度修正。試驗(yàn)表明,本文提出的軌跡捕捉算法能得到較為平滑的捕捉軌跡,因此,在一定程度上能夠降低PC端動(dòng)作復(fù)現(xiàn)過程中人體模型抖動(dòng),具有一定的工程應(yīng)用價(jià)值。

      參考文獻(xiàn):

      [1] 楊波. 基于MEMS慣性傳感器動(dòng)作捕捉系統(tǒng)與軌跡追蹤的研究設(shè)計(jì)[D]. 電子科技大學(xué),2014.

      [2] 侯學(xué)輝. 基于無線傳輸技術(shù)的慣性動(dòng)作捕捉系統(tǒng)研究與設(shè)計(jì)[D]. 山東大學(xué),2016.

      [3] 費(fèi)程羽,蘇中,李擎. 行人慣性導(dǎo)航零速檢測(cè)算法[J]. 傳感器與微系統(tǒng),2016,35(3):147-150,153.

      [4] 高鐘毓,王進(jìn),董景新,等. 慣性測(cè)量系統(tǒng)零速修正的幾種估計(jì)方法[J]. 中國(guó)慣性技術(shù)學(xué)報(bào),1995(2):24-29,39.

      [5] 唐文杰,呂志偉,張倫東,等. 基于零速修正輔助MIMU的行人導(dǎo)航算法研究[J]. 大地測(cè)量與地球動(dòng)力學(xué),2016,36(6):548-551.

      [6] 張金亮,秦永元,梅春波. 基于MEMS慣性技術(shù)的鞋式個(gè)人導(dǎo)航系統(tǒng)[J]. 中國(guó)慣性技術(shù)學(xué)報(bào),2011,19(3):253-256.

      [7] 楊輝. 基于MEMS傳感器的高精度行人導(dǎo)航算法研究[D]. 廈門:廈門大學(xué),2014.

      [8] 黃欣,許建新,張苗,等. 基于行人運(yùn)動(dòng)模態(tài)辨識(shí)的室內(nèi)外無縫導(dǎo)航航向算法研究[J]. 傳感技術(shù)學(xué)報(bào),2017,30(6):878-88.

      [9] 劉文. 基于微機(jī)電慣性傳感器的船舶室內(nèi)導(dǎo)航算法研究[D]. 大連海事大學(xué),2013.

      [10] Skog I,Nilsson J O,Handel P. Evaluation of Zero-Velocity Detectors for Foot-Mounted Inertial Navigation Systems[P]. 2010 International Conference on Indoor Positioning and Indoor Navigation(IPIN),2010.

      [11] 趙紅宇. 慣性行人導(dǎo)航系統(tǒng)的算法研究[D]. 大連理工大學(xué),2015.

      [12] 秦永元. 慣性導(dǎo)航[M]. 第2版. 北京:科學(xué)出社,2014:5-7.

      [13] 劉俊,石云波,李杰. 微慣性技術(shù)[M]. 電子工業(yè)出版社,2005:40-43

      猜你喜歡
      零速慣性姿態(tài)
      你真的了解慣性嗎
      GRU-DNN改進(jìn)的行人導(dǎo)航零速檢測(cè)方法
      基于零速修正與姿態(tài)自觀測(cè)的慣性行人導(dǎo)航算法
      沖破『慣性』 看慣性
      城市軌道交通車輛制動(dòng)系統(tǒng)的零速信號(hào)和非零速信號(hào)方案選用及安全性分析
      攀爬的姿態(tài)
      全新一代宋的新姿態(tài)
      汽車觀察(2018年9期)2018-10-23 05:46:40
      跑與走的姿態(tài)
      無處不在的慣性
      普遍存在的慣性
      404 Not Found

      404 Not Found


      nginx
      林周县| 朝阳市| 高阳县| 桐乡市| 固原市| 武夷山市| 三明市| 成武县| 凤山市| 安康市| 卢氏县| 永福县| 仙居县| 昌吉市| 信宜市| 上饶市| 建昌县| 沐川县| 新和县| 上犹县| 邯郸县| 炎陵县| 休宁县| 普兰县| 深水埗区| 信阳市| 富平县| 临澧县| 喀喇| 中江县| 田东县| 独山县| 桂东县| 三穗县| 遂川县| 台中县| 杭锦旗| 景泰县| 安顺市| 镇安县| 卢湾区|