2018年TI杯大学生电子设计大赛(D题手势识别)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_38158879/article/details/81983529

相关简介

题主于大二年级下学期参加了2018年TI杯电子设计大赛(辽宁省),选题为D题《手势识别》,最终为省二等奖,在此将比赛过程及代码进行分享,欢迎前来交流,不足之处还望指正。


硬件模块

模块 数量 功能
FDC2214 2 手势数据采集
kinetis k60 2 手势数据训练与判别
oled 1 手势判别结果显示
DCDC 1 对MCU供电
覆铜板 1 构成极板
亚克力板 6 作品外壳

               

 

 

 


方案选择

  • 单极板方案

优点:对测试者手势的摆放要求低,有较好的适应性

缺点:同一手势不同测试者之间数值差异较大

  • 多极板方案

优点:手势判别难度降低,准确率提高

缺点:对测试者手势摆放有明确要求,适应性差


程序思路

针对单极方案,我们首先尝试应用lib-svm(支持向量机)算法,以实现对于手势的判别,但鉴于比赛时间和个人水平的限制,对于lib-svm的理解不足,暂不采用该方案。

然后我们尝试在训练模式下,一段时间内,收集测试者做各个手势时,fdc2214所读取的最小数值作为阈值;在判别模式下以各个阈值作为手势的判别依据,经测试准确率在百分之60左右。

最后,为保证手势判别的准确率,我们采取多极板方式,即一个手指对于一个极板,而每块fdc2214有4个通道,所以我们使用了2块fdc2214;多出的3通道,我们选取了其中2个,连接了小块极板作为电容按键,进行菜单选择和模式切换。

程序流程:

  1. fdc2214采集5块极板空载数据(即:无放手数据),待数据稳定后进行记录,标记为开关阈值
  2. 当前极板的放手数据与开关阈值进行比较,有手指为1,否则为0
  3. 根据5块极板的0/1数据对手指进行判别
  4. 电容开关选择模式,猜拳模式或猜数字模式
  5. oled显示判别结果

作品快照


FDC2214驱动

代码已上传至码云

https://gitee.com/niuwengang/BlogShare/blob/master/FDC2214_K60_IAR8_1.zip

未完待更---

猜你喜欢

转载自blog.csdn.net/qq_38158879/article/details/81983529
今日推荐