技术文章及通讯

使用MATLAB处理生物力学性能分析的大型遥测数据集

Michael Davies, EquuSys


马很珍贵,但也很脆弱;在任何时候,顶尖的马术运动员中有六分之一的人在某种程度上是跛足的。因为马是“会飞”的动物,瘸腿的马会竭尽全力隐藏受伤的地方。野马进化出这一特性是为了防止受伤的动物从兽群中被挑选出来成为容易捕食的猎物。这种行为可能会给驯养的马和它们的骑手带来灾难性的后果:因为马非常擅长掩饰受伤,即使是有几十年经验的专家也很难识别细微的跛足,而诊断受伤的确切原因则更难。

eq_fig1_w.jpg
图1。一匹前蹄装有EquuSense传感器的马。

在EquuSys,我们使用MATLAB®开发一种易于使用的非侵入性系统,使马专业人员能够识别和诊断即使是训练有素的眼睛也无法检测到的跛足。

EquuSense技术结合了几个不同的学科,包括遥测学、生物力学和兽医医学。尽管面临着复杂的、多学科的挑战,一个几乎没有MATLAB经验的小开发团队仍然能够迅速地从最初的想法过渡到生产系统。

EquuSense系统(图1)提供了关于马在马背上小跑、在平地上骑行或跳跃的实时定量数据。它的18个无线传感器节点测量相对于马或全球参照系的位置、速度、加速度、方向和旋转,精度可达几毫米或几度。EquuSense软件处理这些遥测数据,以图表、3d图和动画的形式提供关于马生物力学的客观数据。

常见跛行诊断方法

目前,专业人员主要依靠肉眼观察马的运动,通过对跛肢的触诊和阻塞来诊断跛行。

大多数诊断跛足的定量方法,包括高速摄像机、跑步机和压力垫,都取得了有限的成功。一个典型的视频动作捕捉系统是为人类运动员设计的。它无法扩展到马的速度和大小;它的捕获量通常限制在全速运行时分析一个或两个步骤。另一方面,跑步机会扭曲马的步态,而且要安装分析所需的大约75个视频标记可能需要几个小时。压力垫不能产生准确的结果。

开发算法

为了提供关于马生物力学的有意义的信息,我们必须翻译和汇总从马身上的局部传感器获得的原始数据,以产生马运动的六自由度表示。EquuSense节点使用加速度计和陀螺仪来测量加速度和角度旋转。磁力计测量相对于地球磁场的方向。我们的第一个目标是将加速度和角旋转数据从局部参考系转换为全局参考系。

由于多个传感器节点的测量速度高达每秒1000次,因此很明显,每个会话将产生千兆字节的数据。使用MATLAB,我们将数百万行数据从逗号分隔的值文件转换为矩阵,然后我们可以过滤、处理并转换为有意义的信息。

我们使用航天工具箱™通过将方向余弦矩阵转换为欧拉角.因为我们的传感器提供的加速度单位是米/秒的平方,所以我们需要对加速度随时间的变化进行积分,以求得传感器的速度。然后,我们使用测量结果来确定每个传感器的位置。

在开发的早期探索阶段,我们在MATLAB中的脚本和交互模式之间切换,以快速检查变量并尝试新想法。我们可以使用MATLAB绘图功能可视化数据,而无需编写自己的自定义例程。通过使用数组、矩阵和向量化函数,我们可以非常有效地处理大型数据集。如果我们使用C或c++而不是MATLAB,这些任务将花费更长的时间。

我们的一位惯性导航专家用c++写了一个广泛的信号处理库,我们最初是从MATLAB调用的。最终,我们用MATLAB重新编写了整个库,因为我们发现用于信号处理、操作矩阵和执行参考系计算的MATLAB脚本比等效的c++例程更容易理解,也更透明。

测试第一代原型机

作为概念验证,我们在一位专业兽医的帮助下测试了第一代EquuSense系统,他使用了一种叫做阻塞.阻滞通常用于确定受伤的位置,包括麻醉跛腿的某个区域,然后检查马的步态。如果马开始正常行走,就可以认为是在麻醉区域受伤。

在我们第一代原型系统的测试中,一名兽医麻醉了一匹受伤马的腿,这样马就不会再明显地跛了。即使以兽医的专家眼光来看,这匹马也很健康。然而,由我们的分析生成的MATLAB图显示,马向右前腿(RF)传递的力量更少,而向左后腿(LR)传递的力量更多——他向后倾斜,以减少对受伤腿的压力(图2)。

eq_fig2_w.gif
图2。显示右前蹄受伤的马蹄动力分布的图。每条线代表一个步幅。左图:阻塞前的发射功率分布,射频功率小于LR功率。右图:阻挡后的传输功率分布,显示马仍然倾向于LR,表明在视觉检查动物步态时无法检测到跛行。点击图片查看放大视图。

数据表明,马对LR施加的压力要比RF大得多。图2中右侧的图表显示了麻醉蹄的数据。虽然从视觉检查来看,伤口不再明显,但图中清楚地显示,这只动物偏爱右前腿。

该测试表明,传输功率,我们从原始传感器数据计算的一个度量,提供了与跛行相关的步态不对称的可靠指示。

我们从这个测试中学到了另一个重要的教训:EquuSense接口让兽医无法在没有我们的帮助下解释传输功率的图。显然,我们必须同时改进系统的所有方面。当我们转向更先进的传感器和更复杂的信号处理算法时,我们还需要开发一个界面,让用户更直观地了解马是如何移动的。

第二代增强

EquuSense的第二代原型和后续试验提供了更多关于马运动的数据,包括更精确的加速度和角度旋转测量。它还包括一个增强的用户界面,这是我们开发的MATLAB GUI演绎的工具。

当分析一匹马时,兽医和马专业人员使用该软件从试验数据中定义会话。会话包括特定步态(小跑、慢跑等)或马运动中的特定情节的所有数据。然后使用MATLAB算法处理会话,这些算法自开发的初始探索阶段以来一直在迭代改进。算法识别步态并计算三维蹄子轨迹(图3)和每个蹄子方向的欧拉角。

eq_fig3_w.gif
图3。马蹄飞行轨迹三维图。点击图片查看放大视图。

用户可以对数据进行注释,以标记特定的事件,例如从马蹄落地到马蹄起飞的阶段性过渡,然后在感兴趣的数据集中复制该事件。

我们在第二代EquuSense中实现了另一个关键突破:我们开发了MATLAB算法来创建蹄飞行路径的动画表示,如图3所示。当我们向一些早期用户展示这个动画和事件的视频回放时,他们报告说这个功能帮助他们可视化数据的重要方面,并直观地理解它。

进入生产领域及其他领域

生产EquuSense系统已经用于临床研究,我们将继续改进该系统。我们已经开始使用仪表控制工具箱™将数据直接从传感器传输到MATLAB,并且我们计划使用MATLAB编译器™创建一个独立版本的EquuSense软件。我们也在探索这项技术的其他应用,包括人类运动员的生物力学研究。

发布于2009 - 91643v00

下载188bet金宝搏产品使用

查看相关功能的文章

查看相关行业的文章