【问题标题】:KeyError: 'textAnnotations' while doing OCR using Google Cloud Vision APIKeyError:使用 Google Cloud Vision API 进行 OCR 时出现“textAnnotations”
【发布时间】:2020-10-22 09:26:45
【问题描述】:

我正在关注关于 OCR 的 this 教程。我做了所有与教程中提到的相同的事情,但是在最后一部分生成请求时我收到了这个错误KeyError: 'textAnnotations'。我能知道我该如何解决这个问题吗?我的输入图像只是一个字符a

这是我创建请求的方式:

from googleapiclient.discovery import build
import base64
IMAGE="gs://<project-name>/<folder>/<file-name>.jpg"
vservice = build('vision', 'v1', developerKey=APIKEY)
request = vservice.images().annotate(body={
    'requests': [{
       'image': {
          'source': {
             'gcs_image_uri': IMAGE
          }
      },
      'features': [{
          'type': 'TEXT_DETECTION',
          'maxResults': 3,
        }]
     }],
  })
responses = request.execute(num_retries=3)
print(responses['responses'][0]['textAnnotations'][0]['description'])

【问题讨论】:

  • 请添加响应和代码,这个错误意味着他在响应中找不到'textAnnotations'。
  • @Inga890 我正在关注我链接的教程。最后,他们正在创建一个请求。它的结果应该是图像中的文本,但我得到了 keyerror。我已在问题中添加了上述请求。
  • 关键错误来自打印。你收到回复了吗?可以附上吗?
  • 您需要检查它是否检测到图像中的字母。检查responses['responses'][0] 的长度或将其作为一个整体打印出来,看看里面有什么。

标签: python-3.x google-cloud-platform ocr google-cloud-vision keyerror


【解决方案1】:

出现错误时由 API 返回的响应结构与responses['responses'][0]['textAnnotations'][0]['description'] 不同。 我的观点是存在错误,因此您的响应没有您认为的形状。按照 Caleb 的建议,我会打印出完整的回复,然后先看看里面有什么

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 2020-07-13
    • 1970-01-01
    • 2019-02-19
    • 1970-01-01
    相关资源
    最近更新 更多