我一直在尝试使用Python实现一款OCR程序,可以读取特定格式的数字,即XXX-XXX。我使用了Google的Cloud Vision API文本识别,但结果不可靠。在30张高对比度的1280 x 1024位图图像中,只有少数几张得出了正确的输出结果,或者至少在结果中包含了正确的输出。该程序倾向于漏掉一些数字,输出非英语语言或混杂一些特殊字符。
目标是至少连续输出正确的数字,即使结果中夹杂着其他垃圾信息也没关系。是否有办法帮助程序更好地识别数字?例如,限制结果为特定格式或仅限数字?
我一直在尝试使用Python实现一款OCR程序,可以读取特定格式的数字,即XXX-XXX。我使用了Google的Cloud Vision API文本识别,但结果不可靠。在30张高对比度的1280 x 1024位图图像中,只有少数几张得出了正确的输出结果,或者至少在结果中包含了正确的输出。该程序倾向于漏掉一些数字,输出非英语语言或混杂一些特殊字符。
目标是至少连续输出正确的数字,即使结果中夹杂着其他垃圾信息也没关系。是否有办法帮助程序更好地识别数字?例如,限制结果为特定格式或仅限数字?
我无法告诉你为什么这样会起作用,也许与语言是如何被读取有关,例如 o 和 0,l 和 1 等。但每当我使用 OCR 并且我特别寻找数字时,我会将检测语言设置为"Korean"。这对我来说效果非常好,并且极大地影响了准确性。
text_detection
并没有针对您的数据进行优化。如果您有大量注释数据,实际上使用Tensorflow构建自己的模型也是一种选择。这篇博客文章解释了一个系统设置来检测车牌(具有特定的号码格式)。所有代码都可以在Github上找到,该问题似乎与您的问题非常相关。