10

我有一个脚本可以遍历不同形式的图像。在解析 Google Vision 文本检测响应时,我使用每个文本项的“boundingPoly”中的 XY 坐标来专门查找表单不同部分的数据。

我遇到的问题是某些响应仅返回 X 坐标。例子:

{u'description': u'sometext', u'boundingPoly': {u'vertices': [{u'x': 5595}, {u'x': 5717}, {u'y': 122, u'x': 5717}, {u'y': 122, u'x': 5595}

我已经设置了一个 try/except(使用 python 2.7)来解决这个问题,但它总是同样的问题:KeyError: 'y'. 我正在遍历数千种表格;到目前为止,它发生在 1000 行中的 10 行。

以前有人遇到过这个问题吗?如果遇到此错误,除了尝试重新提交请求之外,还有其他解决方法吗?

4

1 回答 1

8

从文档

边界多边形

对象(BoundingPoly)

面部周围的边界多边形。边界框的坐标在原始图像的比例中,在 ImageParams 中返回。计算边界框以根据人类期望“框定”人脸。它基于地标结果。请注意,如果要注释的图像中仅出现部分人脸,则可能不会在 BoundingPoly 中生成一个或多个 x 和/或 y 坐标(多边形将是无界的)。

我相信这意味着'y'在这种情况下的价值是0,或更一般地说,一个边缘值。换句话说,它不知道有界多边形真正在哪里结束,因为文本一直到图像的边缘,因此图像没有提供足够的信息来确定文本实际上在那里结束. 就图像提供的而言,它以'y'of结尾0

于 2016-09-07T21:02:19.473 回答