【20250113】基于肌肉形变测量的连续步态相位估计算法,可自适应步行速度和地形坡度...

【基本信息】

论文标题:Continuous Gait Phase Estimation by Muscle Deformations with Speed and Ramp Adaptability

发表期刊:IEEE Sensors Journal

发表时间:2024年5月30日

【访问链接】

论文链接:https://ieeexplore.ieee.org/abstract/document/10542649

【研究背景】

可穿戴式机器人可以恢复或增强人类的行走能力,被广泛应用于康复和助力领域中。其中,对步行过程中步态相位的正确估计在协调穿戴者与机器人之间的协调运动中起着至关重要的作用。如果穿戴者与机器人之间的运动不同步,将导致运动效率下降、交互负荷增加,并可能对人体造成严重伤害。

5c70d0485663e6b7389106ccc9829671.png

由于关节角度易于测量,现有的方法大多使用惯性测量单元(IMU)测量得到的关节角度和角速度等作为特征对步态相位进行估计,但IMU在长时间的测量中会发生漂移,且基于关节运动信息的步态相位估计容易受到步行速度和地形坡度变化的影响。除此之外,也有利用肌电信号(EMG)、足底压力等运动特征作为运动特征进行步态相位估计的研究,但往往在连续步态相位的预测方面取得的效果不理想。

41a7b23350df515bbf11234235f49f80.png

现有研究发现,肢体运动是由神经兴奋、肌肉收缩和关节转动之间复杂的相互作用所协调的。在这个错综复杂的系统中,骨骼肌是驱动力,而肌肉协同作用决定了最终的运动模式。骨骼肌的形变在促进关节转动和协调关节协同方面起着关键作用,因此,通过可穿戴且灵活的电容系统捕捉到的肌肉形变量,已被证明能有效地识别在不同速度下、不同地形中(包括平地、楼梯和斜坡)的运动模式。

因此,肌肉形变感知为研究步态相位分析提供了一种很有前景的替代方法。

【科学问题】

该论文提出了一种新的基于肌肉形变测量的连续相位估计方法,该方法通过使用灵活的可穿戴传感器和创新的肌肉协同模型,可在不同的步行速度和地形坡度下取得良好的估计效果,所提出的框架有望为优化可穿戴机器人的控制策略提供有价值的可选方案。

该论文基于柔性可穿戴传感器对肌肉形变进行测量,如下图所示。

4a70985c7951a673b46454c152431543.png

因此,该论文拟解决的关键科学问题包括,如何测量并计算步行过程中下肢相关骨骼肌的形变程度?以及,如何在不同步行速度及不同地形坡度下采用同样的方法解决连续步态相位的估计问题?

【核心思路】

该论文利用了一种柔性可穿戴的传感器来获得肌肉形变数据,提出了一种新的肌肉协同模型,在此基础上构建了一种适应不同行走速度及地形坡度的连续相位估计方法。

主要创新部分如下:

  • 建立了肌肉协同模型,得到步态相位与肌肉协同作用及行走速度的关系式,并以此为基础建立了运动特征向量;

  • 通过提取数据集中的输入运动特征向量以及输出步态相位,基于神经网络对肌肉协同模型进行训练,使其能够适应于不同的行走速度和地形坡度。

e590c4979eed8dd3d3c950a69e130bd1.png

下面是核心过程的详细介绍:

1. 肌肉协同模型

肌群间的协同关系决定了步态动作与身体姿势,而肌肉协同特征反映了下肢步态的周期性,如周期和相位等。该论文通过特征提取方法构建肌肉协同模型,并使其适用于步态相位监测中不同速度和坡度的情况。

所提出的肌肉协同作用被表示为,其中代表第块肌肉的形变,代表行走运动中需要被考虑的肌肉总数。

如下图中,模型采用以下假设构建:

a451b87791d5204dac4f7538969c2802.png

(1)对于一个完整的步态周期,肌肉变形表示维空间中的一个闭环曲线,其中每个节点坐标是该曲线上路径长度的函数,记为。

(2)该曲线是连续和可微的,存在一个的逆函数。然后,在封闭曲线中,单调范围为的步态相位与呈映射关系:。其中为曲线的总长度。因此,步态相位就可以表示为肌肉形变的函数:

(3) 的时间导数假设与行走速度成正比,其中比例系数为:

多个步态周期的平均闭环曲线存在变化。

为了正确地捕捉到相对于的变化,被引入,变形速率,因此相对于的导数可以表示为以下形式:

考虑公式(1)与公式(3),为适应不同步态周期的变化,肌肉协同模型要同时考虑以及,且运动特征向量构建如下:

2. 运动数据处理

同时采集肌肉形变、关节角度和足底压力。用于检测脚跟触地来确定步态周期划分的时间,进一步细分该周期。则生成特征向量来估计步态相位。

在由相邻的左脚脚跟触地事件所划分的一个步态周期内,真值在使用脚跟触地的时刻以及的最大值和最小值进行区分的第个子区间内于分段插值:

其中、以及分别表示相位第个子区间内的相位变化、持续时间以及初始相位。为了保持步态周期的归一性且不丢失特征,对、以及进行归一化处理。

为了实现相邻周期之间的相位连续性,步态相位的真实值被映射到单位圆上的节点坐标:

与分别作为输入与输出来建立数据集,进而对连续相位估计模型进行训练:

3. 连续步态相位估计

估计相位的肌肉协同模型由一个输入为,输出为的神经网络算法进行训练。对神经网络数值计算得到的进行归一化,以满足单位向量要求。

由于正常步态周期中相位单调增加,如果估计的相位相对前一个时刻减小,则用前一个时刻的值进行补偿。该补偿方法还可以修正在序列周期过渡时预测的的数值误差。

相位预测的精度由以下公式求得:

其中,为时间时的误差,为预测结果。为了表征每个受试者的相位估计的可靠性,对一个步态周期中的均方根误差进行计算:

其中,为一个周期内采样点的个数。对于总共个周期,所有步态周期的均值和最大值为:

且:

【实验结果】

该论文测试所使用的数据集由九个健康受试者分别以 3,4,5,6km/h 的行走速度于0°,5°,10° 三种不同坡度的斜坡上行走时采集得到。

该论文一共完成了三个实验,第一个实验是验证肌肉模型的可行性;第二个实验是验证肌肉模型对于不同行走速度的适应性;第三个实验是验证肌肉模型对于不同地形坡度的适应性。

其中:

  • 实验一考虑了恒定行走速度和斜坡坡度下的相位预测性能。受试者行走速度与地形坡度不变,75%的数据集用来训练模型,25%的数据集用来进行误差分析。

  • 实验二验证了肌肉协同模型对变速度的适应性。保持地形坡度不变,采用其中一组行走速度下的数据来训练模型,并利用其他行走速度下的数据进行相位预测。

  • 实验三验证了肌肉协同模型对变斜坡坡度的适应性。保持行走速度不变采用其中一种坡度的数据集来训练模型,并利用其他斜坡坡度下的数据进行相位预测。

连续步态相位估计的示意图:

c45e4569a2922c26b0e1bcf417702751.png

步态周期中肌肉变形和关节角度的相图如下:

a9f3cf865378b1e7e7b8583e2cf3b9f3.jpeg

在不同步行速度和地形坡度下,该算法的测试结果:

2bfa3df63532db1048332f2d5ea4ef62.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/67217.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【全套】基于分类算法的学业警示预测信息管理系统

【全套】基于分类算法的学业警示预测信息管理系统 【摘 要】 随着网络技术的发展基于分类算法的学业警示预测信息管理系统是一种新的管理方式,同时也是现代学业预测信息管理的基础,利用互联网的时代与实际情况相结合来改变过去传统的学业预测信息管理中…

小程序组件 —— 31 事件系统 - 事件绑定和事件对象

小程序中绑定事件和网页开发中绑定事件几乎一致,只不过在小程序不能通过 on 的方式绑定事件,也没有 click 等事件,小程序中绑定事件使用 bind 方法,click 事件也需要使用 tap 事件来进行代替,绑定事件的方式有两种&…

邮箱发送验证码(nodemailer)

邮箱发送验证码 打开SMTP 服务使用 Node.js 邮件发送模块(nodemailer)封装验证码组件 开发中经常会遇到需要验证码,不过手机验证码需要money,不到必要就不必花费,所以可以使用邮箱发送验证码 打开SMTP 服务 根据自己想…

AV1视频编解码简介、码流结构(OBU)

我的音视频/流媒体开源项目(github) 目录 一、AV1编码技术 二、AV1码流结构(OBU) 三、IVF文件格式 四、ffmpeg支持AV1 五、关于常见格式对AV1的封装 一、AV1编码技术 AV1是由开放媒体联盟(AOM,Alliance for Open Media)在2018年发布的,AV1的前身…

Sentaurus TCAD学习笔记:transform指令

目录 一、transform指令简介二、transform指令的实现1.cut指令2.flip指令3.rotate指令4.stretch指令5.translate指令6.reflect指令 三、transform指令示例 一、transform指令简介 在Sentaurus中,如果需要对器件进行翻转、平移等操作,可以通过transform指…

kafka消费堆积问题探索

背景 我们的商城项目用PHP写的,原本写日志方案用的是PHP的方案,但是,这个方案导致资源消耗一直降不下来,使用了20个CPU。后面考虑使用通过kafka的方案写日志,商城中把产生的日志丢到kafka中,在以go写的项目…

【opencv】第7章 图像变换

7.1 基 于OpenCV 的 边 缘 检 测 本节中,我们将一起学习OpenCV 中边缘检测的各种算子和滤波器——Canny 算子、Sobel 算 子 、Laplacian 算子以及Scharr 滤波器。 7.1.1 边缘检测的一般步骤 在具体介绍之前,先来一起看看边缘检测的一般步骤。 1.【第…

[Qt]常用控件介绍-多元素控件-QListWidget、QTableWidget、QQTreeWidget

目录 1.多元素控件介绍 2.ListWidget控件 属性 核心方法 核心信号 细节 Demo:编辑日程 3.TableWidget控件 核心方法 QTableWidgetItem核心信号 QTableWidgetItem核心方法 细节 Demo:编辑学生信息 4.TreeWidget控件 核心方法 核心信号…

[Linux]从零开始的STM32MP157交叉编译环境配置

一、前言 最近该忙的事情也是都忙完了,也是可以开始好好的学习一下Linux了。之前九月份的时候就想入手一块Linux的开发板用来学习Linux底层开发。之前在NXP和STM32MP系列之间犹豫,思来想去还是入手了一块STM32MP157。当然不是单纯因为MP157的性能在NXP之…

小程序如何引入腾讯位置服务

小程序如何引入腾讯位置服务 1.添加服务 登录 微信公众平台 注意:小程序要企业版的 第三方服务 -> 服务 -> 开发者资源 -> 开通腾讯位置服务 在设置 -> 第三方设置 中可以看到开通的服务,如果没有就在插件管理中添加插件 2.腾讯位置服务…

添加计算机到AD域中

添加计算机到AD域中 一、确定计算机的DNS指向域中的DNS二、打开系统设置三、加域成功后 一、确定计算机的DNS指向域中的DNS 二、打开系统设置 输入域管理员的账密 三、加域成功后 这里有显示,就成功了。

从epoll事件的视角探讨TCP:三次握手、四次挥手、应用层与传输层之间的联系

目录 一、应用层与TCP之间的联系 二、 当通信双方中的一方如客户端主动断开连接时,仅是在客户端的视角下连接已经断开,在服务端的眼中,连接依然存在,为什么?——触发EPOLLRDHUP事件:对端关闭连接或停止写…

使用RSyslog将Nginx Access Log写入Kafka

个人博客地址:使用RSyslog将Nginx Access Log写入Kafka | 一张假钞的真实世界 环境说明 CentOS Linux release 7.3.1611kafka_2.12-0.10.2.2nginx/1.12.2rsyslog-8.24.0-34.el7.x86_64.rpm 创建测试Topic $ ./kafka-topics.sh --zookeeper 192.168.72.25:2181/k…

使用 Docker 部署 Java 项目(通俗易懂)

目录 1、下载与配置 Docker 1.1 docker下载(这里使用的是Ubuntu,Centos命令可能有不同) 1.2 配置 Docker 代理对象 2、打包当前 Java 项目 3、进行编写 DockerFile,并将对应文件传输到 Linux 中 3.1 编写 dockerfile 文件 …

《研发管理 APQP 软件系统》——汽车电子行业的应用收益分析

全星研发管理 APQP 软件系统在汽车电子行业的应用收益分析 在汽车电子行业,技术革新迅猛,市场竞争激烈。《全星研发管理 APQP 软件系统》的应用,为企业带来了革命性的变化,诸多收益使其成为行业发展的关键驱动力。 《全星研发管理…

22、PyTorch nn.Conv2d卷积网络使用教程

文章目录 1. 卷积2. python 代码3. notes 1. 卷积 输入A张量为: A [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ] \begin{equation} A\begin{bmatrix} 0&1&2&3\\\\ 4&5&6&7\\\\ 8&9&10&11\\\\ 12&13&14&15 \end{b…

ASP.NET Core - 依赖注入(四)

ASP.NET Core - 依赖注入(四) 4. ASP.NET Core默认服务5. 依赖注入配置变形 4. ASP.NET Core默认服务 之前讲了中间件,实际上一个中间件要正常进行工作,通常需要许多的服务配合进行,而中间件中的服务自然也是通过 Ioc…

UE5游戏性能优化指南

解除帧率限制 启动游戏 按 “~” 键 输入 t.MaxFPS 200 可以解除默认帧率限制达到更高的帧率 UE游戏性能和场景优化思路: 1. 可以把可延展性调低,帧率会大幅提高,但画质会大幅降低 2.调整固定灯光,静态光源&#xff…

深度学习中的卷积和反卷积(四)——卷积和反卷积的梯度

本系列已完结,全部文章地址为: 深度学习中的卷积和反卷积(一)——卷积的介绍 深度学习中的卷积和反卷积(二)——反卷积的介绍 深度学习中的卷积和反卷积(三)——卷积和反卷积的计算 …

【C语言】线程

目录 1. 什么是线程 1.1概念 1.2 进程和线程的区别 1.3 线程资源 2. 函数接口 2.1创建线程: pthread_create 2.2 退出线程: pthread_exit 2.3 回收线程资源 练习 1. 什么是线程 1.1概念 线程是一个轻量级的进程,为了提高系统的性能引入线程。 在同一个进…