2

我正在使用谷歌云 Web 检测 API 的 nodejs 客户端库,我想将 base64 编码图像传递给它,但没有关于它的文档。我使用简单的 API 调用进行了尝试,它可以工作,但是由于客户端库更整洁,我想知道他们是否也在那里实现了它。任何的想法?

4

2 回答 2

2

因此,一种解决方法是仅使用 API 来传递 base64:

request({
    url: "https://vision.googleapis.com/v1/images:annotate",
    method: "POST",
    qs: {
      key: "your key"
    },
    json: true,
    body: {
  "requests": [
    {
      "image": {
        "content": place your base64 here(without prefix)
      },
      "features": [
        {
          "type": "WEB_DETECTION"
        }
      ]
    }
  ]
}
于 2018-03-03T12:34:54.560 回答
1

事实上,您应该能够使用Node.js 的 Cloud Vision API 客户端库发送base64 编码的图像

在您的实例中使用该webDetection()方法时,该字段应包含一个对象,该对象本身包含一个对象。该对象具有本文档页面中表示的结构。正如您所看到的,它可以包含图像所在的位置或表示为字节流。ImageAnnotatorClientrequestAnnotateImageRequestimageimagesourcecontent

此外,如果您查看google.cloud.vision.v1.Imageproto 格式的定义,您会发现它确实将sourcecontent作为图像定义。

于 2018-03-05T10:47:43.503 回答