Google Cloud Vision API“PERMISSION_DENIED”

时间:2016-02-21 05:25:25

标签: google-cloud-platform google-cloud-vision

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

来自Google API 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"
     }
    ]
   }
  ]
 }
}

5 个答案:

答案 0 :(得分:3)

您应首先使用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资源管理器存在限制。

答案 1 :(得分:2)

  1. 确保为项目启用 Cloud Vision API 。 注意。默认情况下可能未列出。你可以通过搜索找到它。 enter image description here

  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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

创建google vision api密钥环境变量:

GCV_API_KEY="YOUR_GOOGLE_VISION_API_KEY"

创建base64图像变量:

BASE64_IMAGE=$( base64 image.jpg )

创建json文件以查询谷歌视觉图像标签检测:

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

创建json文件以查询谷歌视觉图像文本检测:

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

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

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获取图片文本,并在json文件中存储repose:

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

答案 4 :(得分:0)

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

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

除了让您的项目进行身份验证并授权使用vision api之外,请按照以下步骤操作。

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