CHOE Namchol, 趙 紅 宇, 仇 森, SO Yongguk
( 1.大連理工大學 電子信息與電氣工程學部, 遼寧 大連 116024;2.金策工業(yè)綜合大學 電子工學系, 朝鮮 平壤 1001 )
近年來,人體運動分析系統(tǒng)已廣泛應用于醫(yī)療康復、體育訓練以及人機交互等領域[1-3].其中,基于MIMU的運動捕捉技術,由于成本低且對室內和室外環(huán)境均具有良好的適應性,成為了近年來的一大研究熱點.然而,由于MIMU的精度不高,許多科研人員致力于提高基于MIMU的運動捕捉系統(tǒng)的準確性.其中傳感器的初始對準是一個重要的問題,如果不進行初始對準,便無法計算每個身體部位的姿態(tài).傳感器的初始對準旨在解決傳感器坐標系與身體坐標系精確一致的問題,即求解每個身體部位坐標系和傳感器坐標系之間的旋轉矩陣.一些研究人員在分析人體行走步態(tài)時,使用MIMU中的加速度計和陀螺儀進行了傳感器的初始對準,該對準過程需要人體下肢進行旋轉運動[4-6];另一些研究人員在分析人體上身運動時,也需要通過人體上身肢體的旋轉運動來進行傳感器的初始對準[7-9].以上初始對準方法均利用了MIMU中的加速度計和陀螺儀,導致在旋轉過程中身體部位的任何微小或異常運動都將影響初始對準的精度.因此,文獻[10]提出了一種易于操作的初始對準方法,即利用MIMU中的加速度計和磁力計來進行對準,由于該方法無需任何身體部位的旋轉,只需保持直立站姿即可進行初始對準,與上述方法有著顯著的差異,使用方便.
實際使用過程中,MIMU中MEMS磁力計的測量精度,直接關系到動作捕捉的精確性.由于低成本MEMS磁力計的測量誤差較大,在系統(tǒng)開始對準工作之前,需要對磁力計進行誤差校正,且在系統(tǒng)開始捕捉工作之后,也需要利用磁力計的測量數據.然而,磁力計誤差校正的問題,在文獻[10]中并未提及.通常情況下,一套運動捕捉系統(tǒng)有7至十幾個MIMU,在進行磁力計校正時,需要考慮校正工作的難易程度和時間成本.因此,在利用磁力計進行初始對準時,較快、較準確地進行磁力計誤差校正是亟待解決的關鍵問題之一.
在慣性導航領域,磁力計的使用非常普遍,科研人員提出了多種用于解決磁力計校正問題的方法.其中,經典的校正方法是旋轉法(swing algorithm,SA)[11],該方法雖然實用且易于實現,但需要提供外部航向參考且始終保持平臺水平.文獻[12]采用了非線性最小二乘法來估計磁力計的誤差參數;文獻[13]采用了迭代批處理最小二乘法;文獻[14-15]采用了自適應最小二乘法,為磁力計誤差校正提供了一種通用的解決方案;文獻[16]提出未知噪聲方差的自適應最小二乘法,該算法可以在存在噪聲的環(huán)境中精確地估計校正參數;文獻[17]采用了一種基于迭代極大似然估計的幾何方法,進行了磁力計測量值的橢球擬合;文獻[18]將最小二乘估計算法用于解決磁力計的橢球擬合問題,以提供一種精確且通用的擬合方法.以上方法通過誤差校正均可以提高磁力計測量的準確性,但上述研究均只考慮了提高磁力計校正精度的問題,并沒有考慮校正過程中具體的旋轉形式和旋轉次數.且上述研究中只利用了一個傳感器,校正時間的相關問題并沒有引起研究人員的重視.此外,所采用的校正算法需要足夠的樣本量,需要通過多次旋轉磁力計采集大量的數據后才能完成磁力計的校正工作.如此,一整套動作捕捉系統(tǒng)需要的校正時間會很長.因此,本文基于兩種可靠的旋轉形式,即常用的八字旋轉形式(手機里磁力計的校正形式)和繞各單軸旋轉形式,通過多次實驗驗證,確定MIMU中磁力計的最佳校正方法.
目前,MEMS磁力計的測量誤差較大,可分為環(huán)境干擾誤差和自身誤差[19].其中,環(huán)境干擾誤差包括硬鐵和軟鐵誤差,自身誤差包括偏置誤差、靈敏度誤差和非正交誤差.
考慮上述誤差源,完整的磁力計誤差模型如下:
h=EsEn(EsiH+Ehi)+E0+ε
(1)
式中:h=(hXhYhZ)T,是MIMU中磁力計的輸出值;H=(HXHYHZ)T,是當地真實的地磁場;Es表示靈敏度誤差矩陣;En表示非正交誤差矩陣;Esi表示軟鐵誤差矩陣,Ehi表示硬鐵誤差矢量;E0表示偏置誤差矢量;ε表示白噪聲.
為了簡化式(1),引入變量A和B,得
h=AH+B+ε
(2)
其中A=EsEnEsi,B=EsEnEhi+E0.
若不存在測量誤差和干擾磁場,MIMU中的磁力計測量數據的投影軌跡應是一個球體,其半徑等于當地的磁場強度.基于這一理論前提,有
(3)
其中H0為當地的磁場強度(在大連理工大學,北緯38°53′34.72″,東經121°32′12.35″,-49.313 μT).
由于A是一個可逆矩陣,忽略白噪聲,方程(2)可表示為
H=A-1(h-B)
(4)
于是,得
(5)
其中M=(A-1)TA-1.
式(5)是橢球方程的廣義形式.從式(5)可以看出,在環(huán)境干擾誤差和自身誤差的影響下,磁力計的輸出數據位于一個橢球面上.若要校正磁力計,必須計算式(5)中M和B的值,二者可以通過最小二乘法進行橢球擬合得到.
橢球可以用下面給出的一般形式來表示:
a1X2+a2Y2+a3Z2+2a4XY+2a5XZ+
2a6YZ+2a7X+2a8Y+2a9Z+a10=0
(6)
定義
2Xn2Yn2Zn1)T
(7)
θ=(a1a2a3a4a5a6a7a8a9a10)T
(8)
其中ξ為n×10的矩陣,θ為10×1的矢量,n為樣本量.
將式(7)、(8)代入式(6)整理得
ξTθ=0
(9)
通過最小二乘法得到橢球方程系數,然后將式(6)變換成廣義形式,得
hTDh+(2E)h+F=0
(10)
a9),常數F=a10.
將式(10)進一步變換,得
(h-(-D-1E))=1
(11)
對比式(5)和式(11)可得
(12)
由于M=(A-1)TA-1,可以通過M的奇值分解求取A-1,從而可以利用式(4)完成磁力計的校正.
本文旨在準確地校正磁力計誤差,并減少校正時間.磁力計校正需要一定的測量樣本,而樣本需在磁力計旋轉狀態(tài)下進行采集,所以不能隨機地選取校正的操作時間.從統(tǒng)計學角度看,樣本量越大,越能反映數據的總體特征.這意味著樣本量越大,越可以獲得更好的校正結果.然而,動作捕捉系統(tǒng)通常由至少7個(下半身),甚至十幾個(全身)MIMU構成.如果每一個磁力計的校正均需要采集大量的樣本,則易導致動作捕捉系統(tǒng)的準備工作耗時過長.因此,需要設計適合的磁力計校正方法.如果旋轉形式不合適,則有限次旋轉所獲得的樣本并不能反映磁力計測量誤差的總體特征.
實際工作中,低成本MEMS磁力計自身具有較大的測量誤差,導致旋轉形式會影響其校正精度.如1.2節(jié)中所述,若求得橢球方程的參數,便可以較準確地校正磁力計誤差.圖1中所示是把磁力計隨機旋轉20次以后,基于磁力計測量數據所構建的地磁場橢球擬合模型.從圖1可以看到,隨機旋轉20次以后所獲得樣本量,可以準確地反映磁力計測量誤差的總體特征.
圖1 隨機旋轉20次后得到的橢球擬合模型
令(Xc,Yc,Zc)表示原點坐標,(Xr,Yr,Zr)表示三軸的半徑,則擬合后的各橢球參數為(Xc,Yc,Zc)=(30.501 7,1.880 6,35.930 4) μT, (Xr,Yr,Zr)=(37.883 3,36.313 1,35.564 6) μT.
為了較準確地校正磁力計誤差并節(jié)省校正時間,本文依據磁力計不同旋轉過程中所擬合的橢球模型與圖1中橢球模型的相似程度,來確定磁力計校正時的最佳旋轉形式和旋轉次數.由于實驗位置固定,可假定所獲得的橢球原點和半徑值為其實際參考測量值.基于此參考測量值,可利用均方根誤差(RMSE,erms)來評估每種旋轉形式和旋轉次數對磁力計校正結果的影響.
(13)
其中Y是參考測量值,Yi是每次實驗的測量值,n是樣本量.
本文實驗采用了基于低成本MPU-9250(磁場強度測量范圍是±4 800 μT)的數據采集節(jié)點,采用的微處理器是STM32L1系列中的STM32L152CBT6芯片,通過nRF24L01+芯片完成傳感器數據從采集節(jié)點到計算機的無線傳輸,最后利用Matlab軟件進行數據分析.
為了避免磁場干擾的影響,所有實驗均在室外進行.一般情況下,通過八字旋轉形式,可對智能手機內置的磁力計進行校正.因此,本文首先要確認在基于MPU-9250的動作捕捉系統(tǒng)中,是否可以采用這種八字旋轉形式來進行磁力計校正.實驗過程中,為了獲得穩(wěn)定的實驗結果,各類旋轉實驗均進行了10次,然后再利用式(13)計算橢球原點和半徑的均方根誤差.
八字旋轉實驗流程:首先把磁力計拿出以后,與手機的磁力計校正方法一樣按八字模樣旋轉,每次旋轉到開始點,然后增加旋轉次數.旋轉時獲得的磁場強度利用無線傳輸到計算機,然后處理數據.
圖2所示為八字旋轉實驗時,不同旋轉次數下的橢球擬合模型.由圖2可知,旋轉次數越多,橢球擬合模型越近似圖1中的橢球模型.
表1所列為不同旋轉次數時,八字旋轉以后計算的橢球原點和三軸半徑的均方根誤差.從表1可以看出,旋轉次數為1時,橢球參數的均方根誤差很大,特別是原點X坐標的均方根誤差為13.439 140 μT、原點Z坐標為10.278 630 μT和Z軸半徑為20.634 930 μT.實驗結果表明,旋轉次數為1時,八字旋轉不能準確地校正磁力計.當旋轉次數從1逐次增加到5時,均方根誤差明顯減?。斝D次數為5時,原點X、Y和Z坐標的均方根誤差為(4.600 275,0.759 620,2.558 613) μT,而且X、Y、Z軸的半徑均方根誤差為(1.188 907,1.494 694,6.715 467) μT.然而,仍然存在個別較大的均方根誤差,如Xc和Zr.這說明,旋轉次數為5時,也不能準確地校正磁力計.雖然旋轉次數可以增加到5次以上,但如果每個傳感器都需要5次以上的旋轉,那么十幾個傳感器則需要較長的校正時間,故5次以上的旋轉本文并未考慮.因此,本文認為八字旋轉不適宜于校正MPU-9250磁力計.
(a) 旋轉次數為1
(b) 旋轉次數為2
(c) 旋轉次數為3
(d) 旋轉次數為4
(e) 旋轉次數為5
圖2 通過八字旋轉得到的橢球擬合模型
Fig.2 Ellipsoid fitting model obtained by rotating along a ∞-shape trajectory
表1 通過八字旋轉得到的橢球原點和三軸半徑的均方根誤差
單軸旋轉實驗流程:首先把磁力計拿出以后,繞傳感器坐標系的3個軸進行旋轉.繞各單軸各旋轉1次時旋轉次數為1,繞各單軸各旋轉2次時旋轉次數為2.獲得的數據傳輸和處理與八字旋轉實驗一樣.
圖3所示為分別繞各單軸進行旋轉實驗以后的橢球擬合模型.從圖3可以看出,旋轉次數為1、2和3時的3個橢球模型,均與圖1中的橢球模型比較接近.
表2所列為繞各單軸旋轉以后計算的橢球原點和三軸半徑的均方根誤差.本實驗與八字旋轉實驗形成了鮮明的對比,即旋轉次數對磁力計的校正結果并無明顯影響.結果表明,單軸旋轉實驗時,不同旋轉次數下,橢球原點和半徑誤差幾乎相同.
實驗結果表明,單軸旋轉形式的校正方法是較穩(wěn)定的,且旋轉次數為1時采集的數據便可以準確地反映圖1中的參考磁場.
(a) 旋轉次數為1
(b) 旋轉次數為2
(c) 旋轉次數為3
表2 繞各單軸旋轉得到的橢球原點和三軸半徑的均方根誤差
綜上所述,可以確定單軸旋轉的校正形式比八字旋轉的校正形式更精確且更穩(wěn)定.
由實驗結果推定,可以采用繞各單軸各旋轉1次的形式來進行磁力計校正.本文旨在節(jié)省多個磁力計的校正時間,因此最終確定將單軸旋轉的校正方法引入動作捕捉系統(tǒng).
在動作捕捉系統(tǒng)中,需要部署的MIMU傳感器較多,且把MIMU安裝于人體之前,需要一定的時間對磁力計進行校正,因此節(jié)省MIMU中磁力計校正的整體時間是最為關鍵的問題之一,亟需確定一種較快且較準確的校正方法.
本文通過實驗手段,在不同旋轉形式和旋轉次數下,對低成本MEMS磁力計(如MPU-9250)的校正方法進行了對比測試.采用八字旋轉5次的校正方法,橢球模型擬合的RMSE值范圍是0.759 620~6.715 467 μT;采用單軸旋轉1次的校正方法,橢球模型擬合的RMSE值范圍是0.378 134~0.550 695 μT.實驗結果說明,單軸旋轉形式比八字旋轉形式更準確,且在保證磁力計校正精度的前提下,僅需要1次的旋轉便可以較快地校正磁力計,提高了磁力計校正工作的便捷性和快速性,有利于MIMU傳感器在動作捕捉系統(tǒng)中的應用和推廣.
[1] 陳 野,王哲龍,李政霖,等. 基于BSN和神經網絡的人體日常動作識別方法[J]. 大連理工大學學報, 2013,53(6):893-897.
CHEN Ye, WANG Zhelong, LI Zhenglin,etal. Human daily activity recognition method based on BSN and neural network [J].JournalofDalianUniversityofTechnology, 2013,53(6):893-897. (in Chinese)
[2] 劉 江,曾遼原. 利用混合動作捕捉方法輔助排球運動技術標準化的研究[J]. 北京體育大學學報, 2014,37(5):133-138.
LIU Jiang, ZENG Liaoyuan. Study on hybrid motion capture method for assisting volleyball technique standardization [J].JournalofBeijingSportUniversity, 2014,37(5):133-138. (in Chinese)
[3] WANG Zhelong, QIU Sen, CAO Zhongkai,etal. Quantitative assessment of dual gait analysis based on inertial sensors with body sensor network [J].SensorReview, 2013,33(1):48-56.
[4] HAMDI M, AWAD M I, ABDELHAMEED M M,etal. Lower limb motion tracking using IMU sensor network [C] //Proceedingsofthe7thCairoInternationalBiomedicalEngineeringConference. Giza:IEEE, 2014:28-33.
[5] PALERMO E, ROSSI S, MARINI F,etal. Experimental evaluation of accuracy and repeatability of a novel body-to-sensor calibration procedure for inertial sensor-based gait analysis [J].Measurement, 2014,52(1):145-155.
[6] YUAN Qilong, CHEN I M, LEE Shangping. SLAC:3D localization of human based on kinetic human movement capture [C] //Proceedings-IEEEInternationalConferenceonRoboticsandAutomation. Piscataway:IEEE, 2011:848-853.
[7] RICCI L, FORMICA D, SPARACI L,etal. A new calibration methodology for thorax and upper limbs motion capture in children using magneto and inertial sensors [J].Sensors(Switzerland), 2014,14(1):1057-1072.
[8] LUINGE H J, VELTINK P H, BATEN C T M. Ambulatory measurement of arm orientation [J].JournalofBiomechanics, 2007,40(1):78-85.
[9] TEACHASRISAKSAKUL K, ZHANG Z Q, YANG G Z. In situ sensor-to-segment calibration for whole body motion capture [C] //2015IEEE12thInternationalConferenceonWearableandImplantableBodySensorNetworks. Cambridge: IEEE, 2015:1-5.
[10] MENG X L, ZHANG Z Q, SUN S Y,etal. Biomechanical model-based displacement estimation in micro-sensor motion capture [J].MeasurementScience&Technology, 2012,23(5):55101.
[11] BOWDITCH N.TheAmericanPracticalNavigator[M]. Bethesda: National Imagery and Mapping Agency, 1995.
[12] PANG Hongfei, LI Ji, CHEN Dixiang,etal. Calibration of three-axis fluxgate magnetometers with nonlinear least square method [J].Measurement, 2013,46(4):1600-1606.
[13] GEBRE-EGZIABHER D, ELKAIM G H, POWELL J D,etal. Calibration of strapdown magnetometers in magnetic field domain [J].JournalofAerospaceEngineering, 2006,19(2):87-102.
[14] MARKOVSKY I, KUKUSH A, HUFFEL S V. Consistent least squares fitting of ellipsoids [J].NumerischeMathematik, 2004,98(1):177-194.
[15] VALéRIE R, AFZAL M H, GéRARD L. Complete triaxis magnetometer calibration in the magnetic domain [J].JournalofSensors, 2010,2010:967245.
[16] SONG Zhongguo, ZHANG Jinsheng, ZHANG Xuhui,etal. A calibration method of three-axis magnetometer with noise suppression [J].IEEETransactionsonMagnetics, 2014,50(11):6971792.
[17] VASCONCELOS J F, ELKAIM G, SILVESTRE C,etal. Geometric approach to strapdown magnetometer calibration in sensor frame [J].IEEETransactionsonAerospaceandElectronicSystems, 2011,47(2):1293-1306.
[18] KIANI M, POURTAKDOUST S H, SHEIKHY A A. Consistent calibration of magnetometers for nonlinear attitude determination [J].Measurement, 2015,73:180-190.
[19] 龍 禮,張 合. 三軸地磁傳感器誤差的自適應校正方法[J]. 儀器儀表學報, 2013,34(1):161-165.
LONG Li, ZHANG He. Automatic and adaptive calibration method of tri-axial magnetometer [J].ChineseJournalofScientificInstrument, 2013,34(1):161-165. (in Chinese)