我有一系列关于为iOS编写代码的问题,包括手写识别日语。我是个初学者,所以温柔点,假设我很愚蠢……
我想用平假名(日语拼音字母)表示一个日语单词,然后让用户手写适当的汉字(汉字)。然后,在内部将其与正确的字符进行比较。然后,用户得到反馈(无论他们是否正确)。
这里我的问题围绕着手写输入。我知道通常情况下,如果使用中文键盘,这种类型的输入是可能的。
我如何才能在不使用键盘本身的情况下创建类似的东西?已经有这样的库函数了吗(我觉得必须有,因为中文键盘上有输入)?
另外,汉字和汉字也不完全一样。有一些日本人自己创造的独特的字符。如何在我的手写识别中包含这些内容?
发布于 2011-06-17 07:50:52
我们在大学的时候也做过类似的练习。
由于汉字对笔画的顺序有很好的定义,只有8个(?)不同的笔划。基本上每个汉字都是有序的笔画序列。像te (手)这样的顺序是“短落向后划水”,然后是两次“从左到右划水”,最后是“底部有小尖端的长向下划水”。有数据库可以为你提供这些信息。
现在,识别正确笔画的问题几乎减少了。你仍然会遇到一些模棱两可的问题,你必须考虑一些笔画与另一些笔画之间的空间关系。
编辑:对于笔画识别,我们将手写笔迹捕捉到45度(键盘上的小圆圈符号在哪里?)角度,从而将其转换为沿这些方向之一的向量序列。假设方向0是从下到上,方向1是从右下到左上,方向2是从右到左,依此类推。
然后,te (123)的第一个笔画是6+,最后一个笔画是4+123 (手) (正如一些人写的那样,它是下降的,有些是水平的),第二和第三个笔画将是下降的
这种粗略的抓拍实际上足以让我们识别汉字。也许还有更柔和的方式,但这个简单的解决方案设法识别了大约90%的汉字。它不能只抓住一个教授的笔迹,但问题是,除了他自己之外,没有人能读懂他的笔迹。
EDIT2:很重要的一点是,你的用户要“打印”汉字,而不是用书法书写,因为在书法中,许多笔画都合并为一种。就像在书法中用“稻田”的部首写汉字一样,这个部首变成了完全不同的东西。或者,有许多水平短划线的部首(如"speech“iu的部首)就变成了一条蠕动的长线。
https://stackoverflow.com/questions/6379729
复制相似问题