Google Cloud Vision - 数字和数字OCR

Nig*_*lJL 15 python ocr text-recognition google-cloud-platform google-cloud-vision

我一直在尝试使用Python实现一个OCR程序,该程序读取具有特定格式的数字,XXX-XXX.我使用了Google的Cloud Vision API文本识别功能,但结果并不可靠.在30个高对比度1280 x 1024 bmp图像中,只有少数产生正确的输出,或者至少在结果中包含正确的输出.该程序倾向于省略一些数字,以非英语语言输出或隐藏一些特殊字符.

目标是至少连续输出正确的数字,如果结果与其他垃圾混在一起无关紧要.有没有办法帮助程序更好地识别数字,例如将结果限制为特定格式,或仅限于数字?

Fem*_*ich 5

在这一刻它不是可以添加约束或给出具体的预期数字格式视觉API请求,提到这里(由云愿景API的项目经理).

您还可以检查所有可能的请求参数(在API参考中),none表示指定数字格式的任何内容.目前只有以下选项:

  • latLongRect:指定图像的位置
  • languageHints:指示期望的语言text_detection(此处支持的语言列表)

我假设你已经检查了多个响应(包含不同的图像区域),看看你是否可以使用不同数字的位置重建文本?

请注意,Vision API并text_detection没有专门针对您的数据进行优化,如果您有大量带注释的数据,它也可以使用Tensorflow实际构建您自己的模型.此博客文章介绍了检测车牌号的系统设置(具有特定的数字格式).所有代码都可以在Github上找到,问题似乎与你的问题非常相关.


Jak*_*den 5

我无法告诉您这为何有效,也许与语言的读取方式有关(o vs 0,l vs 1等)。但是每当我使用OCR并特别寻找数字时,我都会阅读设置检测语言为“韩语”。它对我来说异常有效,并极大地影响了准确性。