1. 引言
下肢外骨骼机器人作为一种集成机械、电子、计算机与人工智能技术的可穿戴设备,在辅助行走、康复训练及运动能力增强等领域发挥着重要作用。而步态活动识别作为实现外骨骼机器人智能化与人机协同的关键环节,直接影响设备的性能和使用效果。然而,步态识别技术的发展仍面临诸多瓶颈,其中最突出的问题在于高质量步态数据的获取以及高性能的步态识别模型。现有数据采集方式主要依赖于多传感器布设,虽然能够精确捕捉人体运动特征,但也存在硬件复杂、成本高昂、实验环境受限等问题。这不仅增加了实验设计的复杂性,还限制相关技术在实际场景中的推广应用。
为克服上述问题,近年来基于仿真的数据生成方法受到越来越多的关注。例如,郝帅等人通过改变故障点位置、初相位以及接地电阻等参数生成仿真数据,并与真实数据构成混合数据集用以扩充样本数量[1],刘艺等人针对传统数据填补方法难以有效利用标签信息和缺失数据的随机信息的不足,提出一种粒子群优化填补算法用于解决混合特征数据缺失问题[2]。因此,通过构建动力学模型并结合现有的人体运动数据库,仿真方法能够在虚拟环境中生成丰富的步态数据,从而减少对昂贵硬件设备的依赖,同时,传统的机器学习方法需要经验丰富的专业技术人员手动从各类传感器收集的数据中选择和提取显著特征[3]-[6],这一过程不具备自动化处理能力,且特征提取有限,需对每个动作周期、步态特征进行逐一标注与计算。该过程繁琐耗时,因而越来越多的研究者开始转向自动化方法来提高效率与准确性。而深度学习技术的发展为时序数据的分析与处理提供了新的可能性,卷积神经网络(CNN)、长短时记忆网络(LSTM)等在捕捉时间序列特征方面表现出色,广泛应用于时序数据的识别、预测建模等领域[7]-[10]。然而,当前已有深度学习模型在处理复杂步态数据时仍存在准确性不足的问题,这表明设计更加适配步态数据特性的网络结构具有重要意义。
基于此,本文提出一种基于混合数据的步态活动识别方法。与传统方法不同,本文通过MATLAB构建下肢外骨骼机器人动力学模型,并利用C3D人体步态数据库作为数据驱动,并通过Simulink仿真生成下肢外骨骼步态数据。同时,将仿真数据与WISDM数据集中人体真实步态数据相结合,构建出一个包含虚拟与真实数据的混合数据集,以进一步提升模型的适应性与泛化能力。在此基础上,设计出一种用于步态识别的深度学习模型,用于实现步态活动的精准识别。本文方法在减少硬件布设需求的同时,提高了步态识别的准确性,最后,通过实验验证了其在实际应用中的潜力。
2. 仿真模型搭建与数据增强
为获取所需步态数据,本文首先使用Solidworks建立下肢外骨骼机器人三维模型,而后将其导入Matlab/Simulink平台并搭建下肢外骨骼机器人动力学模型,该动力学模型由左右腿髋、膝、踝关节连接相关零件,通过设置各关节连接方式为转动连接并输入各关节转动角度进行数据驱动,仿真数据收集流程如图1所示,其中加速度传感器以腰部为基准,对大腿角加速度进行数据采集以模拟WISDM数据集中数据收集过程。此外,对足底添加接触传感器,实时反馈足底接触信息。在仿真过程中将上述传感器数据可视化,并将其储存于Matlab工作区中以便于后续数据处理。
Figure 1. Simulation data collection flow chart
图1. 仿真数据收集流程图
为得到足够的鲁棒性步态数据作为所搭建下肢外骨骼机器人动力学模型输入,本文使用C3D国际生物力学学会的下肢运动生物力学数据作为数据来源。首先,在Matlab中进行数据拟合以得到各关节轨迹曲线,以便于得到固定采样频率的关节角度数据,所拟合各关节曲线如图2所示。此外,为增强数据鲁棒性,本文使用Pycharm对所拟合关节轨迹曲线分别进行步频与步幅正负百分之十变化的关节轨迹曲线,同时,对于每条新生成的关节轨迹曲线添加随机噪声,从而生成不同步频与步幅状态下各关节数据。
此外,本文中WISDM (Wireless Sensor Data Mining)数据集作为真实步态活动的主要数据来源之一,其被广泛用于行为识别研究,该数据集由圣约翰大学的无线传感器数据挖掘实验室发布,旨在为基于传感器的数据驱动研究提供支持,被研究人员广泛应用于步态分析、健康监测、智能穿戴设备开发等领域[11]。本文将其与MATLAB仿真生成的步态数据相结合,构建混合数据集。本文旨在实现对下肢外骨骼机器人步态活动的高效识别,通过结合传感器捕获的真实数据与仿真数据的特性,提出一种具有高效特征提取性能的深度学习模型,在保证模型准确性与泛化能力的同时,有效降低实验成本和硬件依赖。
Figure 2. The joints of the left and right legs of the lower limbs were fitted with curves
图2. 下肢左右腿各关节数据拟合曲线
3. 数据预处理与算法模型搭建
3.1. 数据预处理
对于所收集仿真数据,本文在Pycharm中对其进行如式(1)所示的数据归一化(Normalization)以匹配WISDM原始数据,同时,根据Simulink搭建的下肢外骨骼机器人动力学仿真模型所输出足底压力接触信号,将仿真数据标记为支撑相与摆动相,匹配过程如图3所示,其中,左脚两次足底压力为0之间的数据被标记为摆动相,其余标记为支撑相。为避免数值关系对模型训练过程产生影响,本文使用独热编码(One-Hot Encoding)将标签数值转换为二进制向量,让模型更准确地学习不同类别数据特征,而不会因为数值偏置损害模型性能。最后,将仿真数据按照8:2分为训练集与测试集并与WISDM原始数据进行拼接构成混合数据集,最后根据192个采样点大小的滑动时间窗口和50%的窗口重叠构建出混合数据集,混合数据集中各类样本数量分别为:走路882、慢跑690、上楼梯256、下楼梯207、坐下128、站立99、左腿支撑136、左腿摆动175。
(1)
3.2. 算法模型搭建
深度学习(DL)自诞生以来在图像分类上具有广泛的应用,同时,随着人工智能在其他领域的广泛应用以及各种传感器技术的发展,大量的实验分析已证实卷积神经网络CNN、循环神经网络RNN等网络在时间序列分类领域的可行性,尤其是长短期记忆网络和门控循环单元(GRU)等引入门控机制的改进循环网络架构,能够更好地保留和控制长时间的信息传递,例如,Münzner、Bevilacqua等人利用CNN在基于传感器数据的活动识别中取得了显著的成果[12] [13],Rahman等人通过将CNN与统计特征相结合从而更好地保留时间序列数据中的时间信息[14]。因此,本文提出一种使用Tensorflow深度学习框架搭建的由CNN与LSTM改进的用于混合步态数据识别分类的深度学习模型——Halconstm,该模型创新性地将快速傅里叶变换(FFT) [15]提取的频域特征与原始时域特征联合用于提取混合数据中的时域与频域特征。如图4所示,模型主要由时频域特征提取融合模块、LSTM以及步态分类层组成,以提高模型对不同频率步态信号细节的捕获能力,下面对其各个部分进行详细介绍。
Figure 3. Data labeling procedure
图3. 数据标记过程
3.2.1. 时频域特征提取模块
预处理后的数据首先被馈入时频域信息提取模块中,该模块通过公式(2)所示的快速傅里叶变换有效地处理离散时域数据并将其转换为频域数据,从而提取复杂活动中的高低频能量信息
(2)
其中
为频域中的第
个分量,对应于频率索引
处的值。
为时间域信号在时间索引
处的值。
为信号长度,取决于滑动窗口长度。e为自然对数的底数,
为虚数单位。
为一个周期弧度,此处用于转换角频率。
与Ronao等人将快速傅里叶变换后的特征使用Deep CNN进行活动识别[16],以及Gholamrezaii等人通过快速傅里叶变换变换后使用1DCNN和2DCNN对模型特征进行分类不同[17],本文将单采样时间点
内多个传感器
的多通道数据
组合一个完整数据段,然后对其进行FFT将其转换为频域信息
。接着,对
进行维度变换对齐以得到频域特征,同时,为降低步态数据中无效特征(例如,传感器采集不到完整数据或存在噪声)的影响,受Jierun Chen等人所提出部分卷积(PConv)思想的启发[18],本文将双部分卷积与一维卷积组合用以将步态时域信息特征混合,用以动态忽略缺失或无效数据,仅利用有效部分进行卷积操作,从而提升特征提取的鲁棒性。具体而言,首先通过第一层PConv提取低级的时域特征(如支撑相与摆动相或其他步态活动的局部波动模式),然后使用点卷积对提取到的低级时域特征进行特征整合,通过线性变换减少特征冗余,提升信息密度,既保留了PConv对缺失数据的鲁棒性,又通过点卷积减少了计算复杂度,达到了特征提取效率与效果的平衡,在点卷积之后再次使用PConv捕捉步态信号的高级特征(如全局时序关系),并且随着PConv的再次应用,掩码会动态更新,逐步恢复缺失区域的特征,帮助网络模型更好地聚焦于未缺失部分,同时逐渐填补缺失部分的信息,增强模型对于步态特征的表达能力。
Figure 4. Halconstm model diagram
图4. Halconstm模型图
最后,本文将FFT得到的频域特征与经过双层PConv和点卷积提取到的原始时域特征进行拼接。此过程旨在同步处理原始时序数据的时间依赖性和频域信息,从而提供一种不同的数据视角,有助于解析不同时间点各通道之间的时频域关系,这一方法适用于多通道数据(如多传感器系统、多导联ECG等)的应用中,能够揭示通道之间时频域特征的动态变化,所提出时频域信息提取模块如图5所示。
其中Wl和bl为权值矩阵和偏置向量;下标l表示层的索引;σ1是一个激活函数,可以选择许多选项,比如sigmoids,rectified linear units (ReLU)和tanh函数。训练后,可以确定每层的权重、偏置和激活函数。与CFD模拟相比,训练好的模型能够大大降低计算成本
3.2.2. LSTM与分类层
在时频域特征提取后,本文使用LSTM捕捉和利用跨步态周期的相关性,识别出更细致的步态特征。如周期性的步伐变化、加速度的波动等步态数据中较强的时序规律,同时,LSTM能够通过式(3~5)所示的门控机制(输入门、遗忘门和输出门)有效处理步态数据中的非线性时序关系,增强步态模式的识别能力。
Figure 5. Time-frequency domain information extraction module
图5. 时频域信息提取模块
(3)
(4)
(5)
其中,
表示步态特征向量(如步幅、关节角等)。
表示前一时刻的隐藏状态(反映了之前步态序列的信息)。W、b表示网络的权重矩阵和偏置,
表示Sigmoid激活函数,用于门控操作。
LSTM层之后,通过全局平均池化(GlobalAveragePooling1D)进一步降低参数规模,同时聚合全局信息用于最终分类任务。最终,经过全连接层(Dense)输出步态类别,使用softmax激活函数将结果映射为多类概率分布。
同时,在模型训练过程中,本文使用Adam (Adaptive Moment Estimation)优化器,并加入amsgrad = True参数来增强模型的训练性能。Adam优化器是一种结合了动量(Momentum)和自适应学习率(Adagrad)的优化方法,适用于处理大规模数据和高维参数空间。在下肢外骨骼机器人步态活动识别任务中,Adam优化器能够在处理来自多个传感器的混合数据时,自动调整每个参数的学习率,从而加速训练过程并提高识别精度,本文所使用的深度学习软件与硬件配置如表1所示。提升优化器的收敛稳定性。目标损失函数根据本文混合步态数据任务定义如下:
Table 1. Deep learning software and hardware configuration
表1. 深度学习软件与硬件配置
指标 |
参数 |
Tensorflow_gpu版本 |
2.8.0 |
Python版本 |
3.7.0 |
操作系统 |
Windows 10 Pro – x64 |
GPU |
16GB |
处理器 |
Intel(R) Core(TM) i5-10400F |
Clock Frequency |
2.90 GHz |
运行内存 |
16 GB |
(6)
其中,
为第𝑛个样本属于第i类的真实标签值0或1 (这是由于本文使用独热编码对标签值进行了二进制向量转换,避免标签值对模型训练产生影响)。
为第n个样本被分类为第i类的真实标签值。C为步态活动的类别总数,N为样本数量,用于最后得出平均损失
4. 对比实验与消融实验
本文搭建出时序数据分类深度学习模型多层CNN以及堆叠LSTM用于对比所提出的Halfconstm模型,对于所有模型均采用相同的预处理方式,每个模型都进行150轮训练,取十次训练的平均值作为模型的最终性能,训练结果如表2所示,对于所提出模型的混淆矩阵如图6所示
Table 2. Model training results
表2. 模型训练结果
试验 编号 模型 名称 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
平均值 |
模型参数 |
3CNN |
87.95 |
87.21 |
87.52 |
88.19 |
88.30 |
87.76 |
87.91 |
87.29 |
87.76 |
87.80 |
87.769 |
132,564 |
3LSTM |
89.04 |
89.00 |
89.26 |
89.08 |
89.55 |
89.66 |
89.04 |
89.27 |
89.96 |
89.65 |
89.351 |
388,680 |
Halconstm
(无时频模块) |
89.97 |
89.89 |
89.31 |
90.12 |
90.24 |
90.51 |
90.47 |
90.24 |
90.08 |
90.71 |
90.154 |
125,512 |
Halconstm |
91.37 |
91.60 |
91.68 |
91.64 |
91.09 |
91.52 |
91.13 |
91.52 |
91.60 |
91.37 |
91.452 |
127,048 |
Figure 6. Model confusion matrix diagram
图6. 模型混淆矩阵图
由表2可知,所提出的Halconstm方法相比于主流的CNN以及LSTM对于步态活动的识别率分别提高了3.683、2.101。并且模型参数相对于CNN及LSTM并无明显增加,这对于模型的实时性具有一定的意义,同时,为证明所提出时频特征提取模块的有效性,本文对其进行消融实验,实验表明,时频特征提取模块对于模型性能有显著提升。由图6所示混淆矩阵可知,模型对于上下楼梯等活动识别效果准确率略低于其他步态活动,对于左脚支撑与左脚摆动识别效果较好。
5. 结论
本文针对下肢外骨骼机器人步态活动识别中数据采集困难、硬件布设成本高和识别效率低等问题,提出了一种基于混合数据的步态活动识别方法。通过构建基于MATLAB的外骨骼机器人动力学仿真模型,并结合C3D人体步态数据库与WISDM真实步态数据,生成了一个混合数据集,从而有效降低了对物理实验设备的依赖。针对混合数据的特点,本文设计了一种基于CNN与LSTM改进的深度学习模型,对步态活动进行了精准识别与分类。
实验结果表明,对比传统CNN与LSTM模型,本文提出的Halfconstm模型对于各种活动的识别准确率分别提高了3.683%、2.101%。同时,消融实验证明Halfconstm中的时频域特征提取模块对于模型性能提升了1.298%。
本文方法在步态活动识别任务中具有较高的准确性与鲁棒性,能够高效完成多种步态活动的分类。同时,与传统方法相比,本文方法显著减少了硬件成本和数据采集的时间开销,提高了步态识别的效率与应用适配性。这表明,基于仿真与真实数据融合的混合数据驱动方法为下肢外骨骼机器人步态识别提供了一种切实可行的解决方案。
本文研究为下肢外骨骼机器人的智能化与人机协同提供了重要参考,但仍存在一些局限性。例如,仿真数据与实际环境数据之间的特性差异可能影响模型的泛化能力,未来研究可通过引入迁移学习或多模态数据融合技术进一步优化模型性能。此外,本文研究主要聚焦于简单场景的步态模式识别,对于复杂场景下的动态步态识别仍需进一步探索。
总之,本文工作为下肢外骨骼机器人步态识别技术的发展提供了新思路,具有较高的理论意义与实际应用价值,未来可进一步拓展至更多复杂应用场景中。
NOTES
*通讯作者。