我有一系列关于为 iOS 编写代码的问题,包括日语的手写识别。我是初学者,所以要温柔,假设我很愚蠢......
我想用平假名(日语注音字母)显示一个日语单词,然后让用户手写适当的汉字(中文字符)。然后,在内部将其与正确的字符进行比较。然后,用户会收到反馈(无论正确与否)。
我的问题围绕手写输入。 我知道通常如果使用中文键盘这种输入是可能的。
如何在不使用键盘本身的情况下建立类似的功能?是否已经有这方面的库函数(我觉得一定有,因为中文键盘上可以输入)?
此外,汉字与汉字并不完全相同。日本人自己发明了一些独特的字符。我如何才能将这些包含在我的手写识别中?
最佳答案
我们在大学时进行了类似的练习。
由于汉字的笔画顺序已明确定义,并且只有 8(?)种不同的笔画。基本上每个汉字都是一个有序的笔画序列。像te(手)一样,顺序是“短的向后落笔画”,然后是两次“从左到右的笔画”,最后是“长的向下笔画,底部有小尖端”。有一些数据库可以为您提供此信息。
现在问题几乎减少到识别正确的笔划了。您仍然会遇到一些含糊之处,您必须考虑某些笔划与其他笔划的空间关系。
编辑:对于笔画识别,我们将徒手书写对齐到 45 度(键盘上的小圆圈符号在哪里?)角度,从而将其转换为沿这些方向之一的向量序列。我们假设方向 0 是从下到上,方向 1 是从右下到左上,方向 2 是从右到左,依此类推,CCW。
那么te(手)的第一笔将是[23]+(有些人写它向下,有些人写水平) 第二次和第三次击球将是6+ 最后一个是 4+[123](就像小提示一样,每个作者都使用不同的方向)
这种粗略的捕捉实际上足以让我们识别汉字。也许还有更复杂的方法,但这个简单的解决方案成功识别了大约 90% 的汉字。它不能只识别一位教授的笔迹,但问题是除了他自己之外,没有人能读懂他的笔迹。
EDIT2:重要的是,您的用户“打印”汉字而不是用书法书写,因为在书法中,许多笔划被合并为一个。就像在书法中用“稻田”部首写汉字一样,这个部首会变成完全不同的东西。或者有很多水平破折号的部首(如“speech”iu 的部首)就变成了一条长长的蜿蜒的线。
关于iphone - iOS 日文手写输入代码 请帮忙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6379729/