完整代码见我的GitHub地址:https://github.com/xingjianzhang1997/gesture-recognition

主要思路:1.构建数据集          2.建立神经网络         3.训练并调参        4.保存并调用

另外我还加了界面设计和机械臂控制(通过串口通信把判断结果发给单片机,所以代码中有serial模块)

效果演示:

project清单:

一共识别5种手势动作 1. 剪刀动作 2.石头动作 3.布动作 4.OK动作 5.good动作

训练集: 1~4号动作各有1300张照片,5号动作有1450张照片 测试集: 1~5号动作各有200张照片

文件解释:

1.data文件里面存放test数据集,train数据集,实时保存的图像(用于在线检测)。

2.ges_ico文件里面存放界面窗口显示的各种图标。

3.log文件里面存放训练好的CNN网络的模型参数。

4.CallFrame.py是界面窗口的逻辑文件,用来调用界面文件并编写信号与槽函数。

5.Frame.py是界面窗口的界面文件,通过PyQt5的designer工具生成。

6.GetTestImage.py是利用OpenCV获取图片并标记,用来制作测试集。

7.GetTrainImage.py是利用OpenCV获取图片并标记,用来制作训练集。

8.SaveGesture.py是利用OpenCV实时获取图片,并进行预处理,用于在线检测手势。

9.TestGesture.py是将实时获取的图片送入已训练好的CNN中判断其手势动作。

10.TestInTest.py是将测试集送入已训练好的CNN中判断该网络模型的准确率。

11.Train.py是训练CNN模型函数,并将训练好的模型参数保存在本地。

12.Train_inputdata.py是用来读取数据集的图像和标签,并打包成batch形式。

13.Train_model.py是模型结构,这里用的是AlexNet结构。

使用方法: 先用Train.py训练好模型参数,然后运行CallFrame.py调用出界面窗口, 点击窗口的相应按钮就可以在线检测手势动作,其中的执行手势按钮是和下位机通信(如STM32),通过串口函数将识别结果传给下位机,实现根据手势动作控制的功能。

测试结果: 使用该模型训练到900步的时候在测试集上正确率可以稳定在95%左右。

TensorFlow实现:卷积神经网络识别手势动作(有代码与演示)相关推荐

  1. python神经网络库识别验证码_基于TensorFlow 使用卷积神经网络识别字符型图片验证码...

    本项目使用卷积神经网络识别字符型图片验证码,其基于TensorFlow 框架.它封装了非常通用的校验.训练.验证.识别和调用 API,极大地减低了识别字符型验证码花费的时间和精力. 项目地址:http ...

  2. Android - xml动画,识别手势动作,代码抽取,获取手机SIM卡串号,获取联系人数据,开机广播,发送/解析短信,报警音乐

    转载请注明出处:https://blog.csdn.net/mythmayor/article/details/72878059 1.Activity的任务栈 1.类似一个木桶,每层只能放一个木块,我 ...

  3. Tensorflow搭建卷积神经网络识别手写英语字母

    更新记录: 2018年2月5日 初始文章版本 近几天需要进行英语手写体识别,查阅了很多资料,但是大多数资料都是针对MNIST数据集的,并且主要识别手写数字.为了满足实际的英文手写识别需求,需要从训练集 ...

  4. 使用TensorFlow的卷积神经网络识别手写数字(3)-识别篇

    1 from PIL import Image 2 import numpy as np 3 import tensorflow as tf 4 import time 5 6 7 bShowAccu ...

  5. 【深度学习】Tensorflow搭建卷积神经网络实现情绪识别

    [深度学习]Tensorflow搭建卷积神经网络实现情绪识别 文章目录 1 Tensorflow的基本使用方法1.1 计算图1.2 Feed1.3 Fetch1.4 其他解释 2 训练一个Tensor ...

  6. TensorFlow CNN卷积神经网络实现工况图分类识别(一)

    1. Tensorflow知识点 1.1. 张量 在Tensorflow程序中,所有的数据都是通过张量的形式来表示.从功能的角度上看,张量可以简单的理解为多维数组. (1)占位符Placeholder ...

  7. 使用卷积神经网络识别交通标志

    什么是卷积神经网络 以下解释来源于ujjwalkarn的技术博客: 卷积神经网络(ConvNets 或者 CNNs)属于神经网络的范畴,在图像识别和分类领域具有高效的能力.卷积神经网络可以成功识别人脸 ...

  8. 04.卷积神经网络 W1.卷积神经网络(作业:手动/TensorFlow 实现卷积神经网络)

    文章目录 作业1:实现卷积神经网络 1. 导入一些包 2. 模型框架 3. 卷积神经网络 3.1 Zero-Padding 3.2 单步卷积 3.3 卷积神经网络 - 前向传播 4. 池化层 5. 卷 ...

  9. 从零开始用TensorFlow搭建卷积神经网络

     https://www.jiqizhixin.com/articles/2017-08-29-14 机器之心GitHub项目:从零开始用TensorFlow搭建卷积神经网络 By 蒋思源2017 ...

最新文章

  1. 【Unity】修改UGUI Minimap(2.2.5)的显示范围(min,max)
  2. AFNetworking 2.0使用(持续更新)
  3. |9 其他(linux特定的), 用来存放内核例行程序的文档.,Linux下的帮助命令
  4. 牛客练习赛 63 F-牛牛的树行棋
  5. Linux重定向的理解
  6. 云原生时代业务架构的变革:从单体迈向Serverless
  7. SQL Server 2008 事件探查器(SQL SERVER Profiler)
  8. TDengine安装
  9. Elasticsearch 性能监控2(五种常见问题的解决办法)
  10. System.Web.HttpException: 无法验证数据解决办法
  11. 小博老师精选Java十大CMS ——建站神器
  12. 捷联惯导系统学习7.5(简化的捷联惯导算法及误差方程 )
  13. 本地Laravel下载以及Laravel-admin安装
  14. 2008 r2安装总是跳出 server sql_关于sql server 2008 r2 安装闪退问题解决办法
  15. Industroyer:自震网病毒以来对工控系统的最大威胁
  16. Chives 集群收割机图文说明
  17. URP SMAA 细品
  18. U-BOOT 下载 GitHub
  19. 百度地图的POI帮助文件
  20. StarUML 3.0破解

热门文章

  1. python提取视频、音频音轨,并合成到视频中
  2. Android实现全景图
  3. 羊驼alpaca php,羊驼线(alpaca)简介
  4. 2016.11.29遇到的问题
  5. HDU-2594 Simpsons’ Hidden Talents
  6. 纳什均衡及经典案例(2)
  7. iOS 15升级卡在准备更新上?如何解决?
  8. Sparkthrift-sql执行报错-File does not exist: hdfs://xxx/t_bd_materialgroup/xxx.parquet
  9. 生成EXCEL(不使用模板)
  10. 身体质量指数BMI(Python123练习)