6

我正在尝试 Google Cloud Vision API(测试版),它返回“Permission Denied”消息。但是为该项目启用了“Cloud Vision API”。任何帮助表示赞赏。

来自 Google APIs Explorer 的错误详情

403 OK

- Show headers -

{
 "error": {
  "code": 403,
  "message": "Project has not activated the vision.googleapis.com API. Please enable the API for project google.com:apisexplorerconsole (#292824132082).",
  "status": "PERMISSION_DENIED",
  "details": [
   {
    "@type": "type.googleapis.com/google.rpc.Help",
    "links": [
     {
      "description": "Google developers console API activation",
      "url": "https://console.developers.google.com/project/292824132082/apiui/api"
     }
    ]
   }
  ]
 }
}
4

5 回答 5

4

您应该首先使用 CURL 请求而不是 API 资源管理器或您最喜欢的编程语言:

curl -v -k -s -H "Content-Type: application/json" https://vision.googleapis.com/v1/images:annotate?key=put_your_browser_secret_key_here --data-binary @ put_your_req.json > result.json

{
"requests":[
{
  "image":{
    "content":"put_your_encoded_base64_image_content"
  },
  "features":[
    {
      "type":"LABEL_DETECTION",
      "maxResults":4
    }
  ]
}
]
}

您可能已经知道:

base64 your_image > your_encoded_base64_image_content

希望对您有所帮助,我不知道为什么 API Explorer 存在限制。

于 2016-02-21T10:17:39.110 回答
3
  1. 确保为您的项目启用Cloud Vision API。笔记。默认情况下它可能未列出。您可以通过搜索找到它。 在此处输入图像描述

  2. 创建服务帐户密钥并下载 JSON 格式的密钥。 https://developers.google.com/identity/protocols/application-default-credentials#howtheywork

  3. 设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量。
    export GOOGLE_APPLICATION_CREDENTIALS=/path/to/your/credentials-key.json

于 2016-03-28T08:34:00.327 回答
0

您可以访问https://console.developers.google.com/iam-admin/projects并制作您的项目。

之后,只需启用您想要的服务。只需确保将密钥保存到安全位置即可。这是一个简单的步骤,可以帮助您启用该服务。

除了让您的项目对视觉 api 进行身份验证和授权之外,只需按照以下步骤操作。

https://googlecloudplatform.github.io/google-cloud-python/stable/google-cloud-auth.html

于 2017-02-22T07:26:43.930 回答
0

对于 GOOGLE_APPLICATION_CREDENTIALS - 请确保您指向正确的凭据文件。您应该确保环境变量指向您从控制台下载的凭据文件。否则它将使用 gcloud 项目并且会失败

于 2016-02-22T22:22:11.390 回答
0

创建 google vision api 关键环境变量:

GCV_API_KEY="YOUR_GOOGLE_VISION_API_KEY"

创建 base64 图像变量:

BASE64_IMAGE=$( base64 image.jpg )

创建json文件查询google vision图片标签检测:

echo "{\"requests\":[{\"image\":{\"content\":\"$BASE64_IMAGE\"},\"features\":[{\"type\":\"LABEL_DETECTION\",\"maxResults\":4}]}]}" > gcv_label_request.json

创建json文件查询google vision图片文字检测:

echo "{\"requests\":[{\"image\":{\"content\":\"$BASE64_IMAGE\"},\"features\":[{\"type\":\"TEXT_DETECTION\",\"maxResults\":4}]}]}" > gcv_ocr_request.json

使用 curl 查询 google vision api 以获取图像标签并将 repose 存储在 json 文件中:

curl -v -k -s -H "Content-Type: application/json" https://vision.googleapis.com/v1/images:annotate?key=$GCV_API_KEY --data-binary @gcv_label_request.json > gcv_label_response.json

使用 curl 查询 google vision api 以获取图像文本并将 repose 存储在 json 文件中:

curl -v -k -s -H "Content-Type: application/json" https://vision.googleapis.com/v1/images:annotate?key=$GCV_API_KEY --data-binary @gcv_ocr_request.json > gcv_ocr_response.json
于 2017-01-03T12:22:39.280 回答