本文介绍了如何用肌电来控制机械手的单个手指运动,识别率达到95%以上。原文请点击这里。

摘要
假肢机械手的研究正在广泛开展。本文尝试使用肌电图(EMG)提供对机械手单个手指的增强控制。八通道表面肌电图采集10位受试者前臂最宽处的信号。这些信号对应于五个单独手指的运动,它们是拇指、食指、中指、无名指和小指。从这些信号中提取特征,并应用深度神经网络作为分类器,以平均95%左右的准确率区分这五个信号。然后将分类信号与机械手连接以模拟单个手指的运动。这项工作可以有效地用于手部康复,具有主动控制单个手指运动的灵活性。
第一节
介 绍
肌电图 (EMG)从根本上是通过识别在稳固发展中产生的电信号来研究肌肉工作。肌肉束传递很少的电流来对抗肌肉约束,这些电流是由颗粒在肌肉纤维层上横向交换引起的,称为肌电图(EMG)的标志,可以通过使用导电组件或皮肤表面的阳极,或者同样可以使用侵入性策略进行估计,即通过将传感器嵌入肌肉中,但表面EMG是更典型的估计策略,称为非侵入性技术,因为这些迹象实际上是在没有任何恢复性的情况下进行的,对专家、受试者的危害最小。
机械手是一种模仿用户手的单个手指运动的手。为每个类别使用肌电信号。这个项目在健康、机器人和生物机器人领域有很多应用,例如单手或双手瘫痪的人。该项目可用于抓取高辐射物体。该项目可用于具有大量自由度的假肢。人可以使用由肌电图控制的机械手抓住工业中的重物并将其移动到所需的位置。医疗领域的另一个用途是让过敏者通过不直接接触来治疗。
第二节
方 法
这个项目有三个主要过程,数据采集是第一步,数据采集是从不同的受试者中获取单个手指数据,我们从10个受试者中获取数据。然后对数据进行分类,这是第二步,首先通过使用均值、RMS 等提取其特征来处理数据以获得最佳结果,这为我们提供了应用分类器的平滑数据。得到分类结果后,第三步是应用界面,分类数据在机械手上进行测试。
A. 数据采集
数据是从 10 名受试者在前臂最宽部位的三个不同手腕位置收集的 20 次试验中收集的。使用 MYO SDK 在 MATLAB 上收集数据。执行该手势时暂停一秒钟,并进行 20-30 次试验。
B. 波检测
Myo Armband 是一种先进的设备,它在 200Hz 的采样频率上给出滤波信号,对于波检测使用了两种算法;通过峰值检测波和通过斜率检测波。总分是150。
C. 波峰检测
通过峰值进行波检测是用于以最佳解决方案提取所需信号块的技术之一。在该方法中,我们找到数据峰值的索引,然后提取每个索引左侧的n个点和索引右侧的n个点。(我们设置n=75)。
D. 通过斜率检测波
另一种提取所需信号块的技术是通过斜坡进行波检测。当斜坡开始上升时,我们开始提取点,直到斜坡消失。波如图1所示。

E. 特征提取
特征提取是提取表面肌电信号中隐藏的有用信息,去除不需要的部分和干扰的重要方法。为了成功地对肌电信号进行分类,必须仔细考虑特征向量的选择。我们为每个电极提取了10个特征,总共提取了80个特征(10个特征*8个电极)。最佳结果为标准差(STD)、均方根(RMS)、波形长度和Wilison振幅。特征数据如图2所示。

F. 特征减少
我们使用主成分分析(PCA)和遗传算法 (GA)来减少特征。结果比较,PCA基于方差减少特征,准确率为68.8%,而GA基于最佳适应度减少特征,准确率为97%。
G. 分类器训练
分类通俗易懂地称为模式识别,是该项目的主要核心部分。我们在提取的特征上训练了五个分类器,分类器是线性判别分析 (LDA)、K-最近邻(KNN)、支持向量机 (SVM) 和深度神经网络(DNN),每个分类器的准确率都在 95% 以上。
H. 实时分类
当实时值将数据与离线分类数据进行分类时,称实时分类为在线分类。每当检测到波形时,分类器脚本都会等待检测波形,在提取检测特征并将其馈送到分类器后,分类器返回类以便移动所需的机器人手指,在线分类的结果不如离线分类好。
第三节
建模与仿真

A. 手势:
我们选择了 6 个手势,包括休息位置,这为我们提供了 6 个类。

B. 数据收集:
下面显示了在 MATLAB 上取得的结果:


第四节
分类

线性判别分析是分类的基本方法,用于统计、模式识别和机器学习,以找到特征的线性组合,将事件类别分开,使我们离线和在线的准确率分别达到92.7%和72.7%。
另一种分类支持向量机的方法是一种监督机器算法,通过将每个数据项绘制为 n 维空间中的一个点(其中 n 是您拥有的特征数),每个特征的值是坐标值,给出我们离线准确率为 94.9%,在线准确率为 80.5%。
K-最近邻也是一种分类方法,它是一种非参数方法,其中输入由特征空间中的K个最近的训练示例组成,输出为类成员,离线和在线的准确率分别为97.4%和83.5%。
深度神经网络与更常见的单隐层神经网络的区别在于其深度,即在模式识别的多步骤过程中数据通过的节点层的数量。DNN为我们提供了95%离线和92%在线的准确率。
在所有在线精度中,选择 DNN 是因为结果更准确和平滑。
在线分类结果基于20条试验进行测量,结果与离线分类略有不同。DNN 比其他分类器更加稳定和准确。下面的图 11显示了 DNN 定义每一层的架构结果。

第五节
结果

以下是机械手的输出:

第六节
结论和未来建议

在这篇论文中,我们提出了一种新的方法来控制单个手指运动的机器人手使用肌电图。单个手指动作的识别准确率为95%。尽管所提出的模仿单个手指的目标已经实现,但是,这种机械手还可以引入许多其他重要功能,例如使用无线模块在传感器和控制器之间进行无线通信。
通过提供更多的数据集来提高训练算法的鲁棒性,可以改进当前的分类模型,此外,为了获得更高的精度,建议将更大的经典机器学习算法集合用于分类目的,因为已知集合可在各种难以训练的数据集上提供最先进的精度。可以将使用的不同功能输入分类器,以提高准确度。此外,可以对不同的分类技术进行比较,以确定哪种分类器对此类数据和特征的性能更好。
还建议未来的团队建造更符合人体工程学且美观的机械手。 这将使患者能够以更高的舒适度和轻松度使用手。 建议使用 Autodesk 的 Dreamcatcher 工具,因为该工具已被证明可以提供高度优化的机械设计,这种设计选择确保了机械手的高度可用性并在工程方面针对商业用途进行了优化。
完整内容

本篇由BCIduino脑机接口社区整理或撰写。BCIduino脑机接口社区由来自北京航空航天大学、康奈尔大学、吉林大学、首都医科大学等硕博发起成立,欢迎扫码加入社群,备注"BCI",也欢迎采购BCIduino系列脑机接口科研设备。采购联系:

欢迎大家关注我们!

BCIduino社区|基于肌电图的机械手单个手指控制相关推荐

  1. 掌握新技能的义肢-只需通过用户意图就可以移动单个手指

    神经系统与机器对接依靠人体主要有三个部分:大脑.肌肉和周围神经.埃隆-马斯克的Neuralink大脑植入是BCI系统的一个例子,在所有接口系统方法中,侵入性接口尽管提供了最全面的人机交互,但存在较大的 ...

  2. 遗传算法系统辨识matlab程序,8.8 基于遗传算法的机械手参数辨识 系统辨识理论及Matlab仿真课件.ppt...

    8.8 基于遗传算法的机械手参数辨识 (1) 8.8.1 系统描述 双关节机械臂动力学方程可写为: 其中 为重力加速度. 参数 分别是机械力臂方程中未知物理参数 的函数,表达如下: 由 的定义,可知: ...

  3. (程序员必备技能)基于Python的鼠标与键盘控制实战扩展与源码

    (程序员必备技能)基于Python的鼠标与键盘控制实战与源码 文章目录 (程序员必备技能)基于Python的鼠标与键盘控制实战与源码 一.序言 二.配置环境 1.下载pyautogui包 三.鼠标控制 ...

  4. 基于粒子群优化的MPPT控制

    目录 仿真图: 完整代码: 仿真文件: 仿真图: 完整代码: function [sys,x0,str,ts] = BFOA_PSO_pwm(t,x,u,flag) % %u为输入变量,u(1)为电流 ...

  5. 【毕业设计】基于stm32的智能水杯 - 恒温控制 饮水杯 单片机 物联网 嵌入式

    文章目录 0 简介 1 项目介绍 2 系统设计 3 恒温控制实现 3.1 功能描述 3.2 PID算法原理 3.2.1 P:比例 3.2.2 I:积分 3.2.3 D:微分 3.3 温控代码实现 4 ...

  6. 6轴关节机械手仿真和控制QtQuick3D 和 CodeSys Robotics

    一.概述 本工程利用QtQuick3D做上位机 ,基于CodeSys的控制器,使用 Robotics的库,进行6轴垂直机械手仿真和控制. 二.程序 2.1QtQuick程序 2.1.1程序组织 2.1 ...

  7. 【Spring】spring基于注解的声明式事务控制

    结构 domin package com.itheima.domain;import java.io.Serializable;public class Account implements Seri ...

  8. 【spring】spring基于xml的声明式事务控制

    结构 domain package com.itheima.domain;import java.io.Serializable;public class Account implements Ser ...

  9. 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第10章-基于模型预测控制的人机协同控制

    第9章 回到目录 第11章 第10章-基于模型预测控制的人机协同控制 10.1 引言 同时干预问题 10.2 问题描述 10.3 基于模型预测的人机协同控制器设计 模型预测控制 10.3.1 基于模型 ...

最新文章

  1. python时区转换_在python 不同时区之间的差值与转换方法
  2. Io 异常: The Network Adapter could not establish the connection(转)
  3. 【C++标准库】特殊容器
  4. CV:计算机视觉技术之图像基础知识(二)—以python的skimage和numpy库来了解计算机视觉图像基础(图像存储原理-模糊核-锐化核-边缘检测核,进阶卷积神经网络(CNN)的必备基础)
  5. A. Di-visible Confusion【思维】
  6. 手机设置两个操作:享受专注生活
  7. 143. Reorder List
  8. 替换某个字符串_Schema技术(四)-字符串数据类型
  9. 网易数帆Curve加入PolarDB开源数据库社区
  10. 如何系统地自学python100天_如何系统地自学 Python?
  11. in、at和on作为方位介词_21
  12. 一主多备几影响 oracle,Oracle 10g 一主多备的搭建技巧
  13. 统计文件字符个数 java_如何统计个文件中的字符个数
  14. JSTL 表达式与 EL 语言
  15. ubuntu desktop的分辨率设置
  16. 标签中包含input时line-height属性失效的解决办法
  17. 2_C语言中的数据类型 (一)2.1.常量和字符串常量
  18. oracle 临时表空间的作用和创建以及相关操作
  19. linux版本信息以及x86与x86_64的区别
  20. 动态规划Dynamic programming笔记自用

热门文章

  1. chatGPT与世界杯的故事:人工智能的双重面对
  2. joomla安装遇到的问题
  3. [附源码]Nodejs计算机毕业设计基于售楼系统Express(程序+LW)
  4. php多选筛选,织梦二次开发联动筛选(单选和多选)功能的实现
  5. 番外7:F类功放中漏极四分之一波长阻抗线特性分析
  6. finereport php,FineReport与Web集成
  7. Photoshop把证件照片变清晰【如果拍摄比较模糊的】具体步骤
  8. 空格在html 中的含义
  9. 2022-2027年中国OTT盒子行业市场调研及未来发展趋势预测报告
  10. Adobe AIR 介绍