Android | 一个很糙的字母手势识别方案

最近需要一个字母手势识别功能,字母 C 的识别,因为 C 简单又饱满。可是在网上也没找到什么特别好的库,倒是看了不少关于 GestureDetector 的介绍,单击双击滑动滚动,上上下下、左左右右、BABA的。

不过还是不知道怎么识别字母手势哈,可能最近脑子不灵光了。脑子不灵光,挖坟还是挺在行的 -- 给我挖到一个「2008」年歪果仁写的不是那么精准的方案,整理并分享之。

远古的气息~

哦,对了,这个方案很糙,但也相对简单,且有一定的参考性。08 年的原贴链接见「阅读原文」。我自己在研究的过程中找到了一个新的方向,会更强大和精准, 正在研究。计划下一篇会写一写。有兴趣的话,关注以防走丢。

咱们继续。

总结了下这个「糙」方案的整体思想,很简单:先存储后识别。这个思路留意下,后面文章会再提到。

存储 - 预先准备工作:

1、预先将用户手势分为4个方向,上(U)下(D)左(L)右(R),并实现上下左右监听的功能。

2、“一次按下 + 中间滑动 + 一次抬起“ = 一次手势 = 一次识别。抬起时会有「手势结束」事件,并返回此次形成的手势字符串。

3、收集数据:基于1,2,一笔划写出一个字母,然后记录其手势字符串,比如"C"就是“LDR”。并以HashMap键值对的方式存储使用:mLetters.put("LDR", "C")。

识别 - 正式使用:你想要C,那就将返回的手势字符串和事先存储在 HashMap中的键值对作遍历对比。

经过试验,C的识别率挺高的。这也满足了我的需求。同时,I、J、L、N

M、W、O等正常顺序一笔完成的也很高。

至于其他字母,由于有的大写字母实在一笔划都无法完成,比如A,B等,原贴作者 MrSnowflake 对此类用了小写的方式识别。但这也失去了「字母手势识别」的意义。故此不推荐。

但是,这份代码里,可以学习的有两点:

1、方便的上下左右手势判断,已经集成到一个手势类 SnowGesture 中。简单集成即可实现上下左右的手势监听。

2、简单识别思路:事先存储然后对比识别。即使目前 4 个方向、一个笔画的实现很糙,那如果是 8 个方向并且可以多笔画呢?这个方向是正确的,之后更精准的方案,本质也是这个思路。另一个我能想到的完全不同的思路是:OCR识别。

原文发布于微信公众号 - 猿湿Xoong(skypeng-funny)

原文发表时间:2018-06-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

破解梵蒂冈秘密档案,这个AI认识中世纪手写拉丁文

这听起来就有点难度了。有一个叫 In Codice Ratio 的项目正在尝试把梵蒂冈秘密档案转录为可供查询的电子版。

983
来自专栏PPV课数据科学社区

用python对汽车油耗进行数据分析

- 从http://fueleconomy.gov/geg/epadata/vehicles.csv.zip 下载汽车油耗数据集并解压 - 进入jupyte...

4358
来自专栏Python爬虫与算法进阶

一次数据可视化的过程【Excel】

故事是这样的,在知乎上有一个问题叫做: 有哪些质量很高的冷门电影? 有3万多的关注者,181万的浏览量。 ? 今天主要想记录下数据分析的过程。(数据采集并...

3125
来自专栏算法修养

HDU-4539郑厂长系列故事——排兵布阵(状态压缩,动态规划)

郑厂长系列故事——排兵布阵 Time Limit : 10000/5000ms (Java/Other) Memory Limit : 65535/3276...

3295
来自专栏HansBug's Lab

1088: [SCOI2005]扫雷Mine

1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1635  So...

2677
来自专栏PPV课数据科学社区

"数学之美"系列五——简单之美:布尔代数和搜索引擎的索引

建立一个搜索引擎大致需要做这样几件事:自动下载尽可能多的网页;建立快速有效的索引;根据相关性对网页进行公平准确的排序。我们在介绍 Google Page Ran...

2513
来自专栏大数据挖掘DT机器学习

用python对汽车油耗进行数据分析

- 从http://fueleconomy.gov/geg/epadata/vehicles.csv.zip 下载汽车油耗数据集并解压 - 进入jupyt...

3566
来自专栏数据科学与人工智能

【数据挖掘】图数据挖掘

互联网发展至今,数据规模越来越大,数据结构越来越复杂,而且对系统的需求越来越高。如果学习过数据结构,那么都知道图是放在最后一个结构,当你学习了图,那么应该感知到...

2518
来自专栏数据结构与算法

P2038 无线网络发射器选址

题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大。某城市决定对城市内的公共场所覆盖无线网。 假设该城市的布局为由严格平行的129 条东西向街道和12...

3438
来自专栏Vamei实验室

绘图: Python matplotlib简介

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! matplotlib是基于numpy的一套...

1925

扫码关注云+社区