Java中的字符识别
我有一个新项目,涉及在线字符识别(识别书写的字符)。 我的想法是,每个字符都是由符合数学模型的笔划数来定义的。 例如,“A”可以由三个线性笔画来定义; “O”可以定义为单个圆形笔画。 使用线性回归的原因是因为并非每个笔划每次都是完美的直线或曲线。线性回归可用于形成笔划的“可接受范围”。
我的问题是:
有更好/更简单的方法吗?
Java 是否有一些执行线性回归的内置函数或模块?
有没有比 Java 更容易做到这一点的语言?
I have a new project that invloves on-line character recognition (recognizing characters as they are written). My idea is that each character is defined by a number of strokes that fit a mathmatical model. For instance, 'A' could be defined by three linear strokes; 'O' could be defined as a single circular stroke.
The reason for using linear regression would be because not every stroke would be a perfect line or curve every time.Linear regression could be used to form an 'acceptable range' for the strokes.
My questions are:
Are there better/easier ways to do this?
Does Java have some built in functions or modules that perform linear regression?
Are there any languages that could do this easier than Java?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
实现这一点的方法之一是构建人工神经网络并使用相关算法对其进行训练。 该方法的本质是构建一个由 1 和 0 组成的二维矩阵(输入矩阵)。 每个元素都是神经网络的输入节点。 当我们绘制一个角色时,我们将绘制的元素设置为 1,然后将输入提供给 ANN 并获得实际的角色作为输出。 一旦您构建了足够数量的输入变化并在输入集上运行训练算法,您应该能够比应用上面概述的“线性笔画”方法获得更好的准确性。
我认为你应该能够找到合适的库,它可以帮助你构建人工神经网络并选择合适的训练算法。 我脑子里什么都不记得了。 但你可以用谷歌搜索一下,看看会发生什么。 干杯!
One of the ways to implement this is to build Artificial Neural Network and use associated algorithms to train it. The essence of the method is to build a 2D matrix of 1's and 0's (input matrix). Each element is the input node for the neural network. When we draw a character we set elements we draw over to 1, then you feed the input to your ANN and get actual character as an output. Once you've built a sufficient number of input variations and run the training algorithm over the input sets, you should be able to achieve a much better accuracy then by applying the "linear strokes" method you outlined above.
I think you should be able to find appropriate libraries, which can help you build your ANN and choose appropriate training algorithm. I don't remember any from the top of my head. But you can google around to see what comes up. Cheers!
我发现这个网站有人在其中撰写并提供了他们的识别手写体的几种不同模型的代码。 我不确定哪些更容易或更难,但我认为这会对您有所帮助。 不幸的是我无法回答你的另外两个问题。
I found this website where someone wrote and made available their code for several different models of recognizing handwriting. I'm not sure which ones are easier or harder, but I think this will help you. I'm unfortunately unable to answer your other two questions.