我有一个非正统的问题,我无法想到如何解决的方法。我有一些这样写的信:
/\ |---\ /---\
/ \ |___/ |
/----\ | \ |
/ \ |___/ \---/
现在,我们的想法是阅读这些内容(可能来自文本文件)并将其解析为实际代表的真实字母。所以这应解析为ABC
。
我知道这不是OCR,但我不知道这样的事情是否可行。我不是要求解决方案,而是你最好如何解决这个问题?什么是一个很好的标准来区分何时的字母'开始,什么时候结束?
答案 0 :(得分:2)
基于评论听起来你可以存储一个字符字体图(每个字符的二维数组),然后读取输入文件并缓冲一些等于字符高度的行。
然后,对于每组线,您需要根据字符的宽度对输入进行分段并水平滑动,查找与您的字体映射相匹配的内容。
如果你需要支持多种字体,那么事情会变得更加复杂,你可以从神经网络方法中获益更多。
要记住OCR通常如何工作的一个重要方面是它需要一个任意图像,它“像素化”它产生一个低得多的分辨率图像。在您的情况下,您已经获得了图像的“像素化”表示,您需要做的就是在输入中读取并将其输入到管道的其余部分。
答案 1 :(得分:0)
我仍然认为这是一个OCR问题。
您可以先将字符绘制到图像上,然后通过可用的OCR库运行它。
或者你可以自己做。 通过首先将垂直和horzitonal字符转换为行来预处理它。
然后是前向和反向斜波,曲线的近似起点和终点,它们与前一个水平和垂直相遇(对于诸如“o”或“e”之类的字母,需要采用不同的方法)。
一旦你有这个图像,一个简单的模式分析方法,如朴素贝叶斯应该能够产生可靠的结果。
预处理是否会实际提供准确性改进,我不确定