[AI人工智能教程]LattePanda&AI-剪刀石头布手势识别 精华

查看: 225|回复: 0

[AI人工智能教程] LattePanda&AI-剪刀石头布手势识别

[复制链接]
本帖最后由 铁甲小宝 于 2020-8-20 09:44 编辑

LattePanda&AI-剪刀石头布手势识别

概述

在计算机科学中,手势识别是通过数学算法来识别人类手势。手势识别可以来自人的身体各部位的运动,但一般是指脸部和手的运动。
CgAGTFeXlVmAAZqLAACkQqKDm5Q254.jpg
在项目基础中我们将制作一款剪刀石头布人机对战小游戏,通过对“剪刀”、“石头”、“布”图片的训练,得出剪刀石头布模型文件,调用模型文件就可以对摄像头拍摄的手势进行识别了;在项目进阶中,我们将进一步训练其他手势,测试识别的效果!

项目基础

剪刀石头布小游戏

硬件准备:

AI主控:LattePanda
输入输出设备:5英寸显示屏、键盘、鼠标、摄像头

程序编写:

  1. 双击桌面上的“startpage.sh”,打开JupyterLab,切换到“home/lattepanda/桌面/LattePanda&AI项目实战/”目录下,如下图,检查一下项目必需的3个文件;
    image002.png

  2. 双击“LattePanda&AI-剪刀石头布手势识别”,进入该文件夹:
    image004.png

    • 数据- 集——该文件夹下存有不同类别的图片库,用于训练程序在训练模型时的调用
      image006.png image008.png image010.png
    • 模型分类名称文件——扩展名为“.npy”,训练程序运行时会生成该文件    - 训练程序——该程序包括训练和测试两个部分,训练时会对图库中的图片对象进行特征提取,训练结束后会生成模型文件和模型分类名称文件,测试时会调用这两个文件,并对测试图片进行识别
  3. 双击打开“剪刀石头布训练.ipynb”,运行训练程序;
    *本次的训练模型文件会覆盖上一次的文件,为了便于观察,请在训练前将“剪刀石头布.h5”和“剪刀石头布.npy”删除。
    image012.png

  4. 训练完成后,双击打开“剪刀石头布摄像头.ipynb”;
    image014.png
    样例代码:
    image016.png image018.png image020.png image022.png image024.png image026.png

  5. 运行程序,当执行到最后一个单元格时,会打开交互窗口进入准备阶段,交互窗口的左侧是摄像头采集的实时图像,你需要在3秒倒计时结束前做好手势动作,
    image028.png
    准备界面持续3秒后,电脑出的手势结果会在交互窗口的右侧出现,并根据规则显示比试结果;
    image030.png

  6. 当显示比试结果时,按键盘上的“Q”键可退出交互窗口。
    *在准备阶段,按“Q”键是不会退出交互窗口的。

项目进阶

训练其他手势

在项目基础中,我们做到了识别“剪刀”、“石头”、“布”三种手势,那么能不能通过训练识别更多的手势呢?当然是可以的,下面我们就来试试吧!

  1. 首先我们打开数据集;
    image032.png
  2. 在数据集中,新建一个文件夹,重命名为“手势”,
    image034.png
  3. 双击进入新建的“手势”文件夹,在里面添加你想要训练的手势名称,注意,这里最少要建立2个类别的文件夹;
    image036.png
  4. 在这些手势类别文件夹里,放置海量的手势图片。
    *图片大小最好在20KB~60KB之间,尽量不要超过200KB,图片名称随意。
    image038.png

如何拍摄

为了获取大量的手势图片,我们编写了图片拍摄程序,它能控制与LattePanda相连的摄像头,进行自动连拍。

  1. 在“home/lattepanda/桌面/LattePanda&AI项目实战/”目录下,找到“图片拍摄”文件夹并双击进入;
    image040.png
  2. 双击打开程序,在for index in range(照片数量)中修改你需要拍摄的照片数量;
    image042.png
    样例代码:
    image044.png
  3. 选择深色、无杂物的背景,提前在摄像头合适位置打好手势,然后运行程序,拍摄的图片会在程序同目录下依次出现;
    image046.png
  4. 双击图片查看拍摄效果;
    image048.png
  5. 点击选中第一张图片,按住“Shift”不松开,再点击选中最后一张图片,这样就选中了所有拍摄的图片;
    image050.png
  6. 将拍摄的这些图片移动到“手势/手枪”文件夹下;
    image052.png
    image054.png
    image056.png image058.png

    训练模型

  7. 双击打开“手势训练.ipynb”程序
    image060.png
    样例代码:
    image062.png

    image064.png
    image066.png
  8. 运行程序,程序所在目录下生成“手势.h5”和“手势.npy”文件,并识别测试图片中的手势。
    image068.png




您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2020 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail