【使用 k 折叠交叉验证的卷积神经网络(CNN)】基于卷积神经网络的无特征EMG模式识别研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

文献来源:

 特征提取是从肌电信号中提取有用和有价值的信息的重要步骤。然而,特征提取的过程需要先前的知识和专业知识。本文提出了一种无特征EMG模式识别技术,以解决特征提取问题。首先,使用谱图将原始EMG信号转换为时频表示(TFR)。然后,将TFR或谱图图像直接输入卷积神经网络(CNN)进行分类。提出了两种CNN模型,可以从谱图图像中自动学习特征,无需手动特征提取。使用公开获取的NinaPro数据库中获取的EMG数据对所提出的CNN模型进行评估。我们的结果表明,CNN分类器可以为手部和腕部运动的识别提供最佳的平均分类准确率为88.04%。

原文摘要:

摘要:

Feature extraction is important step to extract the useful and valuable information from the electromyography (EMG) signal. However, the process of feature extraction requires prior knowledge and expertise. In this paper, a featureless EMG pattern recognition technique is proposed to tackle the feature extraction problem. Initially, spectrogram is employed to transform the raw EMG signal into time-frequency representation (TFR). The TFRs or spectrogram images are then directly fed into the convolutional neural network (CNN) for classification. Two CNN models are proposed to learn the features automatically from the spectrogram images without the need of manual feature extraction. The proposed CNN models are evaluated using the EMG data acquired from the publicly access NinaPro database. Our results show that CNN classifier can offer the best mean classification accuracy of 88.04% for the recognition of the hand and wrist movements.

📚2 运行结果

部分代码:

%---Input--------------------------------------------------------------
% imgs      : feature vector (height x width x channel x instances)
% label     : label vector (instances x 1)
% kfold     : Number of cross-validation
% LR        : Learning rate
% nB        : Number of mini batch
% MaxEpochs : Maximum number of Epochs
% FC        : Number of fully connect layer (number of classes)
% nC        : Number of convolutional layer (up to 3)
% nF1       : Number of filter in first convolutional layer
% sF1       : Size of filter in first convolutional layer
% nF2       : Number of filter in second convolutional layer
% sF2       : Size of filter in second convolutional layer
% nF3       : Number of filter in third convolutional layer
% sF3       : Size of filter in third convolutional layer

%---Output-------------------------------------------------------------
% A struct that contains three results as follows:
% acc       : Overall accuracy
% con       : Confusion matrix
% t         : computational time (s)
%-----------------------------------------------------------------------


%% (1) Convolutional Neural Network with one convolutional layer
clc, clear
% Benchmark dataset
[imgs,label] = digitTrain4DArrayData; 

% Parameter setting
opts.kfold     = 5;
opts.LR        = 0.01; 
opts.nB        = 100; 
opts.MaxEpochs = 20; 
opts.nC        = 1; 
opts.FC        = 10;
opts.nF1       = 16; 
opts.sF1       = [3, 3];
% Convolutional Neural Network
CNN = jCNN(imgs,label,opts);

% Accuracy
accuray = CNN.acc;
% Confusion matrix
confmat = CNN.con;


%% (2) Convolutional Neural Network with two convolutional layers
clc, clear
% Benchmark dataset
[imgs,label] = digitTrain4DArrayData; 

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]Too, Jingwei, et al. “Featureless EMG Pattern Recognition Based on Convolutional Neural Network.” Indonesian Journal of Electrical Engineering and Computer Science, vol. 14, no. 3, Institute of Advanced Engineering and Science, June 2019, p. 1291, doi:10.11591/ijeecs.v14.i3.pp1291-1297.

🌈4 Matlab代码实现

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

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

相关文章

前端一定要学的知识点-闭包

闭包是js面试中常问的问题,这篇文章希望能给大家帮助 闭包(Closures) 介绍 闭包是一种在 JavaScript 中常见的概念。它允许函数访问其词法作用域外部的变量,并在函数的生命周期内保持对这些变量的引用。通过闭包,我…

攻防世界-warmup

原题解题思路 只有一张图片,就查看源代码,有一个source.php。 查看source.php,白名单中还有一个hint.php。 hint.php告诉我们flag的位置ffffllllaaaagggg 但是直接跳转是没用的,构造payload。 http://61.147.171.105:55725/sourc…

JS逆向-某招聘平台token

前言 本文是该专栏的第56篇,后面会持续分享python爬虫干货知识,记得关注。 通常情况下,JS调试相对方便,只需要chrome或者一些抓包工具,扩展插件,就可以顺利完成逆向分析。目前加密参数的常用逆向方式大致可分为以下几种,一种是根据源码的生成逻辑还原加密代码,一种是补…

阿里云使用WordPress搭建个人博客

手把手教你使用阿里云服务器搭建个人博客 一、免费创建服务器实例 1.1 点击试用 点击试用会需要你创建服务器实例,直接选择默认的操作系统即可,点击下一步 1.2 修改服务器账号密码 二、创建云数据库实例 2.1 免费获取云数据库使用 2.2 实例列表页 在…

PHP自己的框架实现debug调试模式和时区(完善篇三)

1、实现效果通过config设置开关debug调试模式 2、debug调试模式设置和时区设置 error_reporting和display_errors点击查看详细讲解 public static function run(){//定义常量self::_set_const();//创建模块目录self::_mk_module();//加载文件self::_import_file();self::_set_…

LVS+Keepalived集群

目录 Keepalived Keepalived概述 Keepalived 工作原理 主要模块及其作用 LVSKeepalived 高可用群集搭建 所需服务器 配置负载调度器 配置keeplived 启动 ipvsadm 服务 调整 proc 响应参数,关闭Linux 内核的重定向参数响应 配置节点服务器 测试验证 Keepa…

聊聊springboot的Customizer

序 本文主要研究一下springboot的Customizer TaskExecutorCustomizer FunctionalInterface public interface TaskExecutorCustomizer {/*** Callback to customize a {link ThreadPoolTaskExecutor} instance.* param taskExecutor the task executor to customize*/void c…

vue3移动h5录音功能开发

下载插件 pnpm i js-audio-recorder使用 项目中引用插件 import Recorder from js-audio-recorder;let record ref<Recorder>()const startRecording()>{navigator.mediaDevices.getUserMedia({ audio: true }).then((stream) > {record.value new Recorder(s…

MySQL分页查询慢怎么办

今天看到一个问题。 MySQL分页查询慢怎么办&#xff1f; 第一反应是用limit限制返回的条数。 比如 select * from table order by idlimit 10, 100;实际上我们限制的只是返回的条数是100&#xff0c;并不是查询时就从第10条开始获取数据。 所以实际上MySQL会从第0条开始查询&a…

Android JNI打印logcat日志

在 JNI 中打印日志可以使用 __android_log_print 函数来实现。该函数是 Android NDK 提供的一个用于在本地代码中输出日志消息到 logcat 的方法。 要在 JNI 中打印日志&#xff0c;请按照以下步骤进行操作&#xff1a; 在你的 JNI C/C 代码中包含 <android/log.h> 头文件…

交换机生成树STP

生成树协议&#xff08;spanning-tree-protocol,stp&#xff09;&#xff1a;在具有物理环路的交换机网络上生成没有回路的逻辑网络的方法&#xff0c;生成树协议使用生成树算法&#xff0c;在一个具有冗余路径的容错网络中计算出一个无环路的路径&#xff0c;使一部分端口处于…

VR全景加盟项目如何开展?如何共赢VR时代红利?

VR全景作为一个新兴蓝海项目&#xff0c;相信有着很多人刚接触VR行业的时候都会有这样的疑问&#xff1a;VR全景加盟后项目如何开展&#xff1f;今天&#xff0c;我们就从项目运营的三个阶段为大家讲解。 一、了解项目时 目前VR全景已经被应用到各行各业中去&#xff0c;学校、…

变压器故障诊断(python代码,逻辑回归/SVM/KNN三种方法同时使用,有详细中文注释)

视频效果&#xff1a;变压器三种方法下故障诊断Python代码_哔哩哔哩_bilibili代码运行要求&#xff1a;tensorflow版本>2.4.0,Python>3.6.0即可&#xff0c;无需修改数据路径。 1.数据集介绍&#xff1a; 采集数据的设备照片 变压器在电力系统中扮演着非常重要的角色。…

牛客网Python入门103题练习|【08--元组】

⭐NP62 运动会双人项目 描述 牛客运动会上有一项双人项目&#xff0c;因为报名成功以后双人成员不允许被修改&#xff0c;因此请使用元组&#xff08;tuple&#xff09;进行记录。先输入两个人的名字&#xff0c;请输出他们报名成功以后的元组。 输入描述&#xff1a; 第一…

Apple电脑使用技巧

defaults write com.apple.Dock autohide-delay -float e && killall Dock

投资中的焦虑与恐惧:如何应对市场波动与风险?

在投资过程中&#xff0c;市场波动和风险是难以避免的。然而&#xff0c;对于许多投资者来说&#xff0c;这种波动和风险往往会引发焦虑和恐惧情绪。在本文中&#xff0c;我们将探讨一些应对市场波动和风险的方法&#xff0c;帮助投资者保持冷静和理性&#xff0c;从而做出更好…

Ubuntu20.04安装SNMP服务

在线安装snmp 1.安装snmp服务 sudo apt-get install updatesudo apt-get install snmp snmpd snmp-mibs-downloader2.重启SNMP服务 sudo /etc/init.d/snmpd restart3.查看snmp配置 sudo grep -Ev ^$|^# /etc/snmp/snmpd.conf 离线安装SNMP &#xff08;重要&#xff09; 我…

Django基础1——项目实现流程

文章目录 一、前提了解二、准备开发环境2.1 创建项目2.1.1 pycharm创建2.1.2 命令创建 2.2 创建应用 例1&#xff1a;效果实现例2&#xff1a;网页展示日志文件 一、前提了解 基本了解&#xff1a; 官网Django是Python的一个主流Web框架&#xff0c;提供一站式解决方案&#xf…

8.部署项目

项目地址&#xff1a;RuoYi-Cloud-Plus: 项目正式入驻 dromara 开源社区 迁移地址: https://gitee.com/dromara/RuoYi-Cloud-Plus 1.获取源码 需要有gitee账户 先把源码fork到自己的仓库中 需要多等待一段时间 勾选对应的环境 构建项目 2.sql导入 将sql导入到与sql文件名…

C++工厂方法模式

1 简介&#xff1a; 工厂方法模式是一种创建型设计模式&#xff0c;用于通过一个公共接口来创建具体对象&#xff0c;而无需在客户端代码中显式指定其具体类。它将对象的实例化委托给工厂类&#xff0c;由工厂类根据客户端的请求创建相应的对象。 2 实现步骤&#xff1a; 以下…