如何在同一X轴坐标上获取文本块[Google Cloud Vision API]

问题描述 投票:0回答:2

因此,我正在尝试在Android中实施个人项目,您可以从购物中心扫描不同的收据。我想通过自动化尽可能多的活动来提出一个模块,帮助用户手动输入一点点。情况是:

  1. 我想获取收据的总数,知道作为标准,它可以在这样的行上找到:TOTAL ........... 33.9货币。如何实际获取与包含“Total”的块在同一轴上的块?
  2. 同样的事情适用于每个单独的产品,我想获取每个购物车产品的价值及其价值并将其放入Android中的编辑文本中,以便用户可以进行最后的重新触摸。

收据示例:

Shopping receipt from Mega Image

android machine-learning ocr google-cloud-vision
2个回答
0
投票

这看起来像一个项目的想法,而不是编码问题。

我建议的一件事是从边界框的相对位置猜测块。

但这是一个具有挑战性的研究问题。也许Vision API会打开一些功能,让客户直接了解收据。


0
投票

要逐行获取文本,您需要设置一个自定义逻辑,该逻辑将根据Google Vision API返回的符号处理行,这可能与以下步骤一致:

  1. 创建TextAnnotation中返回的所有符号的集合
  2. 迭代集合并基于检查第一个符号的X坐标(string)与所有其他符号X坐标创建一条线givenSymbol.BoundingBox.Vertices[2].X
  3. 实现检查以跳过已处理的单词并考虑实现X偏移,这将检查给定的X坐标是否足够接近您要检查的X坐标,以考虑略微倾斜的输入文本。
© www.soinside.com 2019 - 2024. All rights reserved.