一、简介

EMG,应用电子学仪器记录肌肉静止或收缩时的电活动,及应用电刺激检查神经、肌肉兴奋及传导功能的方法。英文简称EMG。通过此检查可以确定周围神经、神经元、神经肌肉接头及肌肉本身的功能状态。\ 通过测定运动单位电位的时限、波幅,安静情况下有无自发的电活动,以及肌肉大力收缩的波型及波幅,可区别神经原性损害和肌原性损害,诊断脊髓前角急、慢性损害(如脊髓前灰质炎、运动神经元疾病),神经根及周围神经病变(例如肌电图检查可以协助确定神经损伤的部位、程度、范围和预后)。另外对神经嵌压性病变、神经炎、遗传代谢障碍神经病、各种肌肉病也有诊断价值。此外,肌电图还用于在各种疾病的治疗过程中追踪疾病的恢复过程及疗效。\ 利用计算机技术,可作肌电图的自动分析,如解析肌电图、单纤维肌电图以及巨肌电图等,提高诊断的阳性率。\ 肌电图检查多用针电极及应用电刺激技术,检查过程中有一定的痛苦及损伤 ,因此除非必要 ,不可滥用此项检查。另外,检查时要求肌肉能完全放松或作不同程度的用力,因而要求受检者充分合作。对于某些检查,检查前要停药,如新斯地明类药物应于检查前16小时停用\ 记录肌肉动作电位的曲线(电描记图)称为肌电图。缩写为EMG。实际使用的描记方法有两种:一种是表面导出法,即把电极贴附在皮肤上导出电位的方法;另一种是针电极法,即把针电极刺入肌肉导出局部电位的方法。用后一种方法能分别记录肌肉每次的动作电位,而根据从每秒数次到二、三十次的肌肉动作电位情况,发现频率的异常。应用肌电图还可以诊断运动机能失常的原因。平常所用的针电极称为同心电极,它是把细针状电极穿过注射针的中心,两者绝缘固定制成的。

二、源代码

``` %% Program Start %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 名称:信号处理课程设计 %% 功能:脉搏检测系统GUI主界面 %%  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%

function varargout = mainjiemian(varargin) % MAINJIEMIAN MATLAB code for mainjiemian.fig % MAINJIEMIAN, by itself, creates a new MAINJIEMIAN or raises the existing % singleton. % % H = MAINJIEMIAN returns the handle to a new MAINJIEMIAN or the handle to % the existing singleton. % % MAINJIEMIAN('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in MAINJIEMIAN.M with the given input arguments. % % MAINJIEMIAN('Property','Value',...) creates a new MAINJIEMIAN or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before mainjiemianOpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to mainjiemianOpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help mainjiemian

% Last Modified by GUIDE v2.5 29-Apr-2021 12:18:07

% Begin initialization code - DO NOT EDIT guiSingleton = 1; guiState = struct('guiName', mfilename, ... 'guiSingleton', guiSingleton, ... 'guiOpeningFcn', @mainjiemianOpeningFcn, ... 'guiOutputFcn', @mainjiemianOutputFcn, ... 'guiLayoutFcn', [] , ... 'guiCallback', []); if nargin && ischar(varargin{1}) guiState.gui_Callback = str2func(varargin{1}); end

if nargout [varargout{1:nargout}] = guimainfcn(guiState, varargin{:}); else guimainfcn(guiState, varargin{:}); end % End initialization code - DO NOT EDIT

% --- Executes just before mainjiemian is made visible. function mainjiemian_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to mainjiemian (see VARARGIN)

% Choose default command line output for mainjiemian handles.output = hObject; ha=axes('units','normalized','position',[0 0 1 1]); uistack(ha,'down') II=imread('1.jpg'); image(II) colormap gray set(ha,'handlevisibility','off','visible','off'); % Update handles structure

% Update handles structure guidata(hObject, handles);

% UIWAIT makes mainjiemian wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = mainjiemian_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes on button press in togglebutton1. function togglebutton1_Callback(hObject, eventdata, handles) untitled; % hObject handle to togglebutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hint: get(hObject,'Value') returns toggle state of togglebutton1

% --- Executes on button press in togglebutton2. function togglebutton2_Callback(hObject, eventdata, handles) yuchuli; % hObject handle to togglebutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hint: get(hObject,'Value') returns toggle state of togglebutton2

% --- Executes on button press in togglebutton3. function togglebutton3_Callback(hObject, eventdata, handles) tezheng; % hObject handle to togglebutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hint: get(hObject,'Value') returns toggle state of togglebutton3

% --- Executes when figure1 is resized. function figure1SizeChangedFcn(hObject, eventdata, handles) % hObject handle to figure1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) if nargout [varargout{1:nargout}] = guimainfcn(guiState, varargin{:}); else guimainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT

% --- Executes just before jidian is made visible. function jidian_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to jidian (see VARARGIN)

% Choose default command line output for jidian handles.output = hObject; ha=axes('units','normalized','position',[0 0 1 1]); uistack(ha,'down') II=imread('666.jpg'); image(II) colormap gray set(ha,'handlevisibility','off','visible','off');

axes(handles.axes1); axes(handles.axes2); axes(handles.axes3); axes(handles.axes4); axes(handles.axes5); axes(handles.axes6); % Update handles structure guidata(hObject, handles);

% UIWAIT makes jidian wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = jidian_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes when figure1 is resized. function figure1_SizeChangedFcn(hObject, eventdata, handles) % hObject handle to figure1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in pushbutton1. function pushbutton1Callback(hObject, eventdata, handles) %%%%%把代码放到这,运行时自动加载 [filename,filepath]=uigetfile('C:\Users\dell\Desktop\信号处理课设-----杨硕\初始脉搏数据\MaiBobefore.txt'); filename=[filepath,filename]; [t,Plusepre]=textread(filename,'%f%f','headerlines',1);%读入2个浮点值,并跳过文档的第1行 [m,n]=size(Plusepre); n=3; s3=Plusepre;

%%%%%%%%%%%%—————提取2000个点进行数据处理——————%%%%%%%%%%%%%%%%%%%% fs=360;%采样率 x0=s3(1:2000);%取1到2000共2000个点 t=1:length(x0);%length(x0)指x0数组元素的个数 axes(handles.axes1); plot(t,x0) xlabel('采样点'); ylabel('magtitude'); title('标准脉搏信号') box1=msgbox('正在加载请稍候','提示'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%初步去除基线漂移%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%中值滤波%%%%%%%%%%%%%%%%%%%%%%%%%%%% L1=medfilt1(x0,330); %一维中值滤波,x0为数组,即要处理原始波形,n是中值滤波器的参数,L1是滤波以后的结果(数组) L2=x0-L1; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%频谱%%%%%%%%%%%%%%%%%%%%%%%% N=length(x0);%样点个数 df=fs/(N-1);%分辨率 f=(0:N-1)df;%其中每点的频率 Y=fft(L2(1:N))/N2;%真实的幅值 axes(handles.axes2); plot(f(1:N/2),abs(Y(1:N/2)));%傅里叶变换后的频谱图是对称的,这里需要一半就可以了 xlabel('频率/Hz'); ylabel('振幅'); axis ( [0 100 0 0.4] ); title('中值滤波后脉搏信号频率谱') drawnow; ```

三、运行结果

\ \ \ \ \

四、备注

版本:2014a

【肌电信号】脉搏信号分析(去噪+特征提取)matlab源码含GUI相关推荐

  1. 【语音识别】基于mfcc特征模板匹配算法实现声纹识别matlab源码含GUI

    在任意一个Automatic speech recognition 系统中,第一步就是提取特征.换句话说,我们需要把音频信号中具有辨识性的成分提取出来,然后把其他的乱七八糟的信息扔掉,例如背景噪声啊, ...

  2. 【图像去噪】基于中值+小波+维纳+滤波器图像去噪matlab源码含 GUI

    一.简介 1 中值滤波 中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术.它也是一种邻域运算,类似于卷积,但是计算的不是加权求和,而是把数字图像或数字序列中一点的值用该点的一个邻域中 ...

  3. 【通信】基于短波通信系统仿真matlab源码含 GUI

    一.简介 短波按照国际无线电咨询委员会(CCIR,现在的ITU-R)的划分是指波长在l00ml0m,频率为3MHz30MHz的电磁波.利用短波进行的无线电通信称为短波通信,又称高频(HF)通信.实际上 ...

  4. 【语音识别】基于智能语音识别门禁系统matlab源码含GUI

    一.简介 本文基于Matlab设计实现了一个文本相关的声纹识别系统,可以判定说话人身份. 1 系统原理 a.声纹识别     这两年随着人工智能的发展,不少手机App都推出了声纹锁的功能.这里面所采用 ...

  5. 【人脸识别】基于 Gabor+SVM和PCA+SVM实现人脸识别matlab源码含 GUI

    1 简介 随着经济的快速发展,互联网的普及,信息安全逐渐被人们所重视.人脸识别技术作为保护信息安全的重要手段之一,也逐渐被研究学者所重视.人脸识别作为计算机视觉技术和生物特征识别技术的一个重要分支,模 ...

  6. 【身份证识别】基于形态学实现二代身份证号码识别系统matlab源码含GUI

    一.简介 首先从身份证图像上获取0-9和X共十一个号码字符的样本图像作为后续识别的字符库样本,其次将待测身份证图像进行去噪.灰度化.二值化.水平投影切割,垂直投影并切割,将待测身份证号码分割出来,然后 ...

  7. 【图像配准】基于Horn-Schunck和Lucas-Kanade等光流场实现图像配准matlab源码含GUI界面

    光流法理论背景 1.什么是光流 光流(optical flow)是空间运动物体在观察成像平面上的像素运动的瞬时速度. 光流法是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前 ...

  8. 【图像识别】基于 Haar分类器实现五官定位matlab源码含 GUI

    一.简介 1 Haar分类器的前世今生 人脸检测属于计算机视觉的范畴,早期人们的主要研究方向是人脸识别,即根据人脸来识别人物的身份,后来在复杂背景下的人脸检测需求越来越大,人脸检测也逐渐作为一个单独的 ...

  9. 【人脸识别】基于PCA+SVM人脸识别(准确率)matlab源码含GUI

    一.简介 1 PCA\ PCA(Principal Component Analysis)是常用的数据分析方法.PCA是通过线性变换,将原始数据变换为一组各维度线性无关的数据表示方法,可用于提取数据的 ...

最新文章

  1. 听说这是准备下班的时候,测试又提bug过来的表情
  2. 李宏毅线性代数笔记4:向量
  3. Linux 的启动流程--转
  4. jquery 回车事件
  5. jsp 体检信息查询 绕过用户名验证_一篇彻底搞懂jsp
  6. 建筑设计 - 概念设计 - 笔记:- 第一章
  7. python屏幕文字识别_python中使用OCR 技术进行《文字识别》
  8. ubuntu11.04 --- 没有了上边的导航 和左边的导航 怎么办?
  9. IIS配置aspnet常见为题
  10. 1024程序员 | 我如何从零基础转行成为一个自信的前端
  11. 计算机组装教程 ppt,电脑组装教程完整.ppt
  12. 叶笑嘴角露出来一个不知是什么意味的笑容
  13. QQ邮箱开通exchange的方法
  14. 转贴:Microsoft OLE DB Provider for SQL Server错误80040e37
  15. 2022年中职组“网络安全”赛项湖南省任务书
  16. 2023电工杯数学建模竞赛A题思路解析+代码+论文
  17. 如何生成Android的keystore文件
  18. 全面介绍144芯超高密度光纤配线箱!
  19. 《父与子的编程之旅-与小卡特一起学python》第18章
  20. java saf,SAF框架介绍,SAF框架使用详解

热门文章

  1. apiCloud授权绑定第三方账号,微信、QQ、微博。
  2. 环境搭建 | 深度学习爱好者如何配置带GPU电脑环境
  3. 找不到该项目 请确认该项目的位置_裕同拟在上海投7亿建包装新项目;可回收、可再用、可降解的生物基涂层雪糕包装来了;利安德巴塞尔美国50万吨/年PE新装置试车...
  4. 三国志战略版:Daniel_马腾分析
  5. linux 多wan口 路由器,真假多WAN负载均衡
  6. python中iadd与add_如何为Python属性实现-uyu iadd_uu
  7. 解决 ENVI App Store安装后无法打开的问题
  8. 3、计算圆形面积(蓝桥杯入门题)
  9. Python:对图片批量进行重命名
  10. Linux7添加syslog,在CentOS 7.2上使用rsyslog配置syslog server