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 条评论
登录 后参与评论

相关文章

来自专栏牛客网

面经--微博&&今日头条

2020
来自专栏域名资讯

好域名被秒!8yy.com域名一口价19.5万元

所谓3杂,狭义上来说,是指字母与数字结合的,不包含后缀,长度为3位的域名。广义一点,3位扁担米,中英结合或中数结合的IDN域名,都可归纳为3杂。在...

2000
来自专栏Golang语言社区

改变未来IT世界的十种编程语言:Go语言

这里要说的都是革新,说这些的目的就是要保持关注最新技术。如果你是一个程序员,想要探寻未来技术,那这篇文章就是你的必读之选。我们这里列出了10种编程语言,10种将...

5125
来自专栏牛客网

一点咨询 提前批 大数据岗 面经总结

【每日一语】这个世界,生活,人本身,都是荒诞的。不要白费心智去猜,去理论,因为无可猜,无可理论。事情并不一定要因为一个理由而发生,发生之后并不一定要达到什么目的...

1711
来自专栏noteless

6.计算机语言的发展 编程语言发展 编程语言类型 为什么会有编程语言 编程语言什么作用 机器语言 高级语言分类 编程语言历史 编程语言有哪些 编程语言编年史

随后,开始用与代码指令实际含义相近的英文缩写词、字母和数字等符号来替代描述指令代码

1922
来自专栏北京马哥教育

R、Python、Scala 和 Java,到底该使用哪一种大数据编程语言?

当你找到大数据项目,你首先会怎么做?确定这个项目的问题领域,确定这个项目的基础设施,在往上,确定项目的框架,选择最适合用来处理当前数据的所有内容。这个时候唯一摆...

4025
来自专栏喔家ArchiSelf

IOT语义交互性之词汇定义

只是限于能力有限,却始终没有什么建树。如今,区块链的出现可能会解决可信的问题。接下来闲暇的时候,需要好好学习一下。安全对于任何互联网应用都是及其重要。无所不在指...

1684
来自专栏程序员维他命

2017年5月iOS招人心得(附面试题)

在2017年5月中旬,技术老大让我招两个1-2年的iOS开发,把简历的筛选和第一轮技术面试的任务交给了我。于是便自己准备了这套面试题。

1794
来自专栏ImportSource

程序员求生秘籍

不过即使是假新闻,也着实把人们吓得够呛。为此,我试图理了十个实用动作给大家保平安。

1514
来自专栏web编程技术分享

小兔JS教程(一) -- 环境搭建与JavaScript初探1.开发环境搭建2.JavaScript初探

3509

扫码关注云+社区

领取腾讯云代金券