基于MATLAB的人体肌电信号处理与应用毕业论文
2021-07-13 00:32:53
摘 要
表面肌电信号(sEMG,surface electromyography signal)是在皮肤表面记录的神经肌肉系统的生物电活动,可以反映神经、肌肉的功能状态。它的运用范围十分广泛,除了基本的医疗和生物学研究,还可以作为一种评估工具,用来评估应用研究、理疗/康复、运动训练和工作环境的好坏。本文利用实验装置记录了不同握力下的肌电信号,提取这些肌电信号的特征值,并将该特征值作为神经网络模型的输入信号,运用BP网络,对力的大小进行了分类。辨识的结果不仅可以作为机械手和人工电子假肢的控制信号,还可以作为人体康复治疗的反馈信号。
本文首先对人体手部的肌电信号进行采集,再对原始肌电信号进行预处理,主要是10-500Hz带通降噪和50Hz陷波除去工频干扰。之后对表面肌电信号进行特征值提取,这部分对时域分析、频域分析和时频分析等常用肌电信号分析方法做了对比,并选用时频分析中的小波变换法进行特征值提取。最后本文采用前馈神经网络作为EMG 信号运动模式分类器, 采用弹性BP算法(RPROP)对网络进行训练,先后对2个和4个力量水平的力进行了识别。同时,本文详细介绍了如何在MATLAB中完成以上操作,展示了识别的效果。
关键词:表面肌电信号;MATLAB;小波变换;神经网络
Abstract
The surface EMG signal, recorded at the surface of the skin and providing information about the neuromuscular activity, can reflect nerve and muscle function status. The use of it is very wide , Besides basic physiological and biomechanical studies, kinesiological EMG is established as an evaluation tool for applied research, physiotherapy/rehabilitation, sports training and work conditions. In this paper, the experimental apparatus records the EMG under different grips, then we extract the eigenvalue of EMG and use it as the input signal of the neural network model, which can identify the EMG of fore different force. The results not only can be used as the control signal of the robot and the artificial electronic artificial limb, but also can be used as the feedback signal of the human body rehabilitation therapy.
In this paper, we first collect the sEMG of the human hand, and then pre process the original EMG signal, mainly the 10-500Hz band-pass noise reduction and 50Hz notch filter to remove the power frequency interference. Then we extract the eigenvalue of EMG, in this part we compare some common methods to analyze the sEMG, such as time domain analysis, frequency domain analysis and time-frequency analysis. According to this, we choose the wavelet decomposition sEMG to process the signals. Finally we make feedforward neural network as EMG signal motion pattern classifier, using elastic BP algorithm (RPROP) to train the network to identify twe different force and fore different force. The processing and result of EMG are realized in MATLAB environment.
Keywords: sEMG; MATLAB; wavelet decomposition; neural network
目录
摘要 I
Abstract II
第1章 绪论 1
1.1 课题背景及目的 1
1.2 国内外研究现状 1
1.2.1肌电信号特征提取方法 2
1.2.2肌电信号模式识别方法 2
1.3 本文研究内容与结构 3
第2章 肌电信号的来源和预处理 4
2.1 肌电信号的来源和特征 4
2.1.1肌电信号的来源 4
2.1.2肌电信号的特征 5
2.2待处理的肌电信号 5
2.3肌电信号的预处理 6
2.3.1数字信号处理的原理及作用 6
2.3.2数字滤波器的设计 7
2.3.3数字滤波器在MATLAB中的实现 7
第3章 肌电信号的特征提取和神经网络的建立 9
3.1常用肌电信号处理方法及比较 9
3.1.1时域分析法 9
3.1.2频域分析法 9
3.1.3时频分析法 10
3.2小波变换提取特征值 10
3.2.1小波变换的原理 11
3.2.2小波变换提取特征值在MATLAB中的实现 11
3.3人工神经网络的建立 12
3.3.1人工神经网络概述 12
3.3.2BP神经网络的基本原理 14
3.3.3BP神经网络设计的一般原则 14
3.3.4BP神经网络的设计 16
3.3.5BP神经网络在MATLAB中的实现 16
第4章 MATLAB处理肌电信号及结果分析 18
4.1程序流程 18
4.2识别结果及分析 19
第5章 总结 23
参考文献 24
致谢 25
绪论
课题背景及目的
肌电信号是一种较为复杂的生物电信号,神经系统通过它来传递信息控制肌肉的活动,所以肌电信号与肌肉的生理状态和控制肌肉的神经系统密切相关,可以作为反映神经、肌肉功能状态的指标[1]。表面肌电信号检测是一种无创的检测肌肉电活动的方法,操作方便快捷,通过对表面肌电信号的分析和研究,可以识别力的大小,评估肌肉的健康状态以及应用于假肢的控制。除此之外,表面肌电信号还可用于运动学研究,分析运动时各肌肉动作的序列和对运动贡献大小,了解运动时各肌肉的协调性,帮助运动员更加科学高效的训练。