基于MEMS传感器群的人体运动捕获*

2012-10-22 03:34刘泽华
传感器与微系统 2012年9期
关键词:磁力计姿态精度

刘泽华

(北京邮电大学自动化学院,北京 100876)

0 引言

人体运动捕获系统简称动捕系统(motion capture,MC),用于捕获人体的实时运动并将特定格式的动捕数据交付应用端。根据获取运动数据手段的不同,可分为基于摄像机型和基于传感器型两大类。基于摄像机型的动捕系统由高速摄像机阵列、大通量计算设备和数据处理软件构成,成本十分高昂。过去,动捕主要被应用在大型3D影视作品和游戏的制作中。近年来,由于技术不断成熟和软硬件成本的下降,动捕逐渐出现在大众的视野中,更多厂商在此领域进行研发,一些产品已经取得良好的效益。

国内外对传感器类的动捕的研究并不多,目前有导航型和异质核光纤型2种。后者于2011年由日本创价大学研发[1],利用光纤不同弯折角度的导光性能差异,精度较高,但是必须穿着贴附全身的服装。导航型动捕利用导航技术(制导技术)[2,3]和机器人机构学[4]技术制成,主要使用陀螺仪、加速计、磁力计、超声波探头等,也有较高精度。还有一种衣服内植入了对拉伸敏感的传感纤维[5],但目前还不能进行动捕。

导航型动捕主要经历以下几个发展阶段:单独使用加速计[6]、磁力计[7];陀螺仪和加速计结合[8];陀螺仪、加速计、磁力计结合[9];集成传感器的节点加入卡尔曼滤波[10]。

在以上的研究成果当中,组合使用传感器能大幅度提高系统的精度和动态特性,然而磁场干扰会极大地影响到捕获精度。加入卡尔曼滤波技术可使捕获精度有小幅度提升,但在大幅提高运算量的情况下对软硬件的要求都相应提高。在微型数字传感器和低功耗计算设备推广使用的背景下,本文试图开发出具有较高精度,良好动态特性、对磁场干扰不敏感的、计算量较小的运动捕获系统。

1 单节点的姿态解算

1.1 姿态表示

载体相对于参考坐标系的姿态可以用不同的数学表达式[2]来定义,本系统中使用的2种。若无特殊说明,文中的导航坐标系一律使用NED系。2种姿态表述如下:

方向余弦矩阵:最主要的优点在于可以与仿射变换矩阵联合使用,在有位置坐标运算的情况下十分方便。在此用符号表示,是一个3×3阶的矩阵,矩阵的列表示载体坐标系中的单位矢量在参考坐标系中的投影。

四元数:主要优点在于运算复杂度低,表示简便。在此用符号q表示,是一个四参数的表达式。它基于的思路是:一个坐标系到另一个坐标系的变换可以通过绕一个定义在参考系中的矢量μ的单次转动来实现。四元数在使用之前必须归一化。

在捕获计算中,需要对2种姿态表示方法进行相互转换。其中,由方向余弦矩阵提取四元数略有难度。这里从精度与复杂度各有差异4种算法[2,11]中选择了基于构造矩阵特征向量的算法,它计算量较小,同时具有很高的精度。

1.2 姿态的解算

1.2.1 使用角速度积分进行姿态解算

姿态解算使用陀螺仪收集到的角速度测量值,通过积分的方法计算出传感器姿态,本文采用四元数法。这种方法在精度,运算量上都有良好表现[12,13],表达式如下

式中q和分别为表示当前姿态的四元数和该四元数的导数。W为4×4的矩阵,由wx,wy,wz构成。

解算以上微分方程至少有3种方法[14,15],这里采用了四阶泰勒展开法,该方法运算量最小,适于计算机运算,同时有较高的精度。

1.2.2 使用加速计和磁力计解算姿态

加速计和磁力计联合解算姿态的算法至少有4种[16~18],在进行运算量和精度的比对之后,选用了综合性能更好的 FQA(factored quaternion algorithm)[18],其优点在于:由于磁力计数据仅影响四元数的一个转角(yaw),因此,大幅减少了磁场干扰对姿态解算的影响;反复使用三角函数却并未直接求三角函数值,省去了计算机中的级数展开运算,使计算量大幅降低。

1.2.3 姿态的融合

姿态数据的融合可以使用自适应的卡尔曼滤波(AKF),但考虑到本系统中姿态捕获的精度提高不明显,极大地提高了计算量[19],并且对硬件要求高,因此,未采用这种方法。

因为FQA的理想使用环境是传感器无线性加速度并且仅受地磁场影响,所以,在本系统中,超出门限的加速计和磁力计数据将不会进入解算环节。这意味着FQA算法仅在线性加速度和磁场干扰很小的情况下才起作用。

接下来对角速度积分和FQA算法所得到的姿态量进行融合。在线性加速度或磁场干扰较大的情况下,仅有角速度积分的姿态解算起作用;相反情况下,利用方向余弦矩阵表示法的唯一性,给解算出的2个姿态量设置权重并求取平均值,即在缓慢运动时,二者协同作用,在剧烈运动时,仅角速度积分起作用。这种融合方法在尽量提高捕获精度的同时几乎完全消除了积分漂移。

1.2.4 传感器的校准与数据处理

1)陀螺仪的校准

陀螺仪的校准主要是去除偏置,将静置时读数的平均值减去即可。

2)磁力计的校准

硬偏移:主要由硬磁物质引起,表现为随机旋转的磁力计读数的散点图为偏离原点的球壳。球壳的球心点即为硬偏移的向量值。本系统中通过大量采样计算最小残差值求得硬偏移。

软偏移:主要由软磁物质引起,表现为随机旋转的磁力计读数的散点图是以原点为中心的椭球壳,软偏移量用矩阵来表示,通过矩阵论的算法可求出软偏移并对磁力计进行校准。

3)滤波处理

为了减小噪声引起的抖动,加速计和磁力计的输出端分别加入了低通数字滤波器。

2 全身姿态的解算

2.1 仿射变换矩阵

将人体骨骼之间的关系看做一系列刚体和相应的运动副组合而成的空间开式链,描述骨骼的位置和姿态(简称位姿)的方法是使用4×4的仿射变换矩阵[4]。

4×4 的齐次变换矩阵可将刚体的位置和姿态描述统一起来,表示如下

式中 R为物体姿态,用方向余弦矩阵表示;P为物体位置,用向量表示。

因此,有

2.2 人体运动模型的建立

2.2.1 骨骼与关节的建模

参照国际上较为通用的标准,共定义了19段肢节,固结在每段肢节上的坐标系可以根据实际情况自行定义,肢节的名称、转轴位置如图1。

图1 人体运动模型示意Fig 1 Motion model diagram of human body

2.2.2 传感器节点的布设

由于传感器节点在系统中的作用是感知刚体的姿态,所以,节点需要被安装在能明显反映肢体的刚体运动的位置。结合舒适性的考虑,最终确定了布设传感器的16个位点,并将各个位点的数据与定义的肢节模型绑定。

2.2.3 肢节坐标系的映射关系

将单个传感器的姿态与肢节的长度结合起来,以Hips为基点,使用仿射变换矩阵即可计算出人的整体姿态。设上一级肢节为A,下一级肢节为B,肢节的坐标系固结在根节点上。已知A的绝对位姿,A的长度和B的绝对姿态,就可计算出B的绝对位姿。计算步骤如下:

1)利用A的长度和A的绝对位姿得到A端点的绝对位置;

2)A端点的绝对位置结合B的绝对姿态即为B的绝对位姿。

3 实验与性能评估

3.1 实验平台

加速计 MMA8451(3 mm ×3 mm ×1.1 mm)、陀螺仪L3G4200D(4mm×4mm×1.1mm)、磁力计MAG3110(2mm×2mm×0.85 mm)。每个节点(图 2)有3种各1只传感器。数据采集部分主芯片使用STM32F103ZE。无线通信使用蓝牙2.0技术。解算程序和测控程序在上位机运行,上位机为X86架构,操作系统为Windows 7,程序运行在.NET 4.0平台。

3.2 精度评估

1)静态捕获精度评估

直接将两段铝合金杆铆接,模拟人肢体的单轴运动(图2)。传感器固结在杆上,使用该机构对单节点姿态解算的效果进行评估。方法是其中一杆静止,另一杆分别停在不同的转角,通过分析采集到的姿态数据以评估系统静态定姿的性能(图3,表1)。

图2 用于测试的铝合金机构Fig 2 Al alloy mechanism for test

图3 节点的静态定姿情况Fig 3 Static attitude determination of node

表1 采样数据的统计结果Tab 1 Statistical results of sampling data collection

2)动态捕获精度评估

先对代表前臂的杆施加0°~90°的快速旋转,再对代表上臂的杆施加0°~90°的快速旋转。实验条件所限,使用30fps的摄像机记录机构的运动过程,从每帧的图像中可以提取出转角数据。观察并对比摄像机的记录结果和传感器的捕获结果(图4)。

图4 两杆的相对夹角Fig 4 Relative angle of two poles

3.3 整体表现

系统在整体测试中(图5),可以较为真实地还原人体的运动,在调试环境不合适的时候会出现一些偏差,其主要来源如下述:

图5 整体性能测试Fig 5 Overall performance test

1)主要误差来自于传感器安装得不够稳定,未来需要优化传感器的佩戴装置;

2)磁场受到干扰后的畸变对运动的还原有一定的干扰作用;

3)人体骨骼的构造使得其运动不能完全抽象为定点刚体运动,存在细微偏差。

4 结论

本文介绍了一种使用消费级MEMS传感器的轻量级运动捕获系统。系统集成了多种传感器,先通过导航算法对传感器数据进行处理和融合,再使用解算出的姿态还原出人体的实时运动。对比传统的导航型动捕系统,本系统使用了精度更高,计算量较小的新算法,抗磁场干扰能力更强。由于使用了微型的数字传感器,本系统十分轻便,容易穿戴,功耗很小,成本低廉。对比大型摄像机动捕系统,本系统的成本极其低廉且十分便携;对比KinectTM,本系统具有捕获速度快、捕获精度高、受光照和距离的影响小等特点,因此,可以应用在健身普及,小型动画制作,高危作业人员监护等场合。

本系统还存在一些缺陷。首先,由于需要使用磁力计导航,所以,在有较强磁场干扰的情况下,系统的功能会发生一些紊乱;其次,传感器节点必须稳定地附在人体的肢节上,否则,捕获到的数据会有较大误差。

[1] Koyama Y,Nishiyama M,Watanabe K.Wearable motion capturing with the flexing and turning based on a hetero-core fiber optic stretching sensor[C]∥Proceedings of the 21st International Conference on Optical Fiber Sensors,Ottawa,Canada:SPIE,2011:77534—1 -77534B—4.

[2] Titterton D H,Weston J L.Strapdown inertial navigation technology[M].Stevenage:The Institution of Electrical Engineers,2004.

[3] 秦永元.惯性导航[M].北京:科学出版社,2006.

[4] 熊有伦,丁 汉,刘恩沧.机器人学[M].北京:机械工业出版社,1993.

[5] Farringdon J,Moore A J,Tilbury N,et al.Wearable sensor badge and sensor jacket for context awareness[C]∥Proceedings of the Third International Symposium on Wearable Computers,San Francisco,CA,USA,IEEE,1999:107 -113.

[6] Lee Jihong,Ha Insoo.Sensor fusion and calibration for motion captures using accelerometers[C]∥Proceedings of the 1999 IEEE International Conference on Robotics & Automation,Detroit,MI,USA,IEEE,1999:1954 -1959.

[7] O'Brien J F,Bodenheimer R E,Brostow Jr G J,et al.Automatic joint parameter estimation from magnetic motion capture data[DB/OL].[1999—04—01].http:∥ hdl.handle.net/1853/3408.

[8] Sakaguchi T,Kanamori T,Katayose H.Human motion capture by integrating gyroscopes and accelerometers[C]∥Proceedings of the 1996 IEEE/SICE/RSJ International Conference on Multisensor Fusion and Integration for Intelligent Systems,Washington DC,USA,IEEE,1996:470 -475.

[9] Sun Shuyan,Huang Shuai,Huang Zhipei,et al.Human modeling and real-time motion reconstruction for micro-sensor motion capture[C]∥Proceedings of the 2011 IEEE International Conference on Virtual Environments Human-Computer Interfaces and Measurement Systems(VECIMS),Ottawa,Canada:IEEE,2011:1 -5.

[10] Sun Shuyan,Meng Xiaoli,Ji Lianying,et al.Adaptive Kalman filter for orientation estimation in micro-sensor motion capture[C]∥Proceedings of the 14th International Conference on Information Fusion,Chicago,IL,USA,IEEE,2011:1 -8.

[11]周绍磊,丛源材,李 娟,等.方向余弦矩阵中四元数提取算法比较[J].中国惯性技术学报,2008,16(4):415 -418.

[12]张荣辉,贾宏光,陈 涛.基于四元数法的捷联式惯性导航系统的姿态解算[J].光学精密工程,2008,16(10):1963-1970.

[13]段小庆,王宏力,郑佳华.高动态下捷联惯导系统姿态算法比较研究[C]∥系统仿真技术及其应用学术会议论文集,合肥:中国自动化学会系统仿真专业委员会,2007:75-77.

[14]邢志皙,王爱民.捷联惯导系统姿态算法比较[J].舰船电子工程,2009(181):81-84.

[15]孙冬梅,田增山,韩令军.捷联惯导系统中四元素法求解姿态角仿真模拟[J].弹箭与制导学报,2009,29(1):53 -60.

[16]刘 凯,郭建国,葛致磊,等.一种基于GPS/磁强计/加速度计的组合导航/定姿方法[J].飞行力学,2011,29(1):93 -96.

[17] Shuster M D,Oh S D.Three-axis attitude determination from vector observations[J].Journal of Guidance and Control,1981,4(1):70-77.

[18] Yun Xiaoping,Bachmann E R,McGhee R B.A simplified quaternion-based algorithm for orientation estimation from earth gravity and magnetic field measurements[J].IEEE Trans on Instrumentation and Measurement,2008,57(3):638 -650.

[19]秦永元.卡尔曼滤波与组合导航原理[M].西安:西北工业大学出版社,1998.

猜你喜欢
磁力计姿态精度
六轴IMU补偿的磁力计动态稳定校准
攀爬的姿态
基于低功耗蓝牙的磁力计在线校准系统设计
分析误差提精度
全新一代宋的新姿态
跑与走的姿态
基于DSPIC33F微处理器的采集精度的提高
多传感器组合的行人航位推算方法研究
GPS/GLONASS/BDS组合PPP精度分析
改进的Goldschmidt双精度浮点除法器