Como usar curl para enviar solicitações

Este exemplo usa curl para enviar uma solicitação para a Vision API. Ele envia a imagem abaixo ao especificar o URL HTTPS com acesso público:

https://cloud.google.com/vision/images/rushmore.jpg

Instalar o curl

curl é uma ferramenta de linha de comando para fazer solicitações de URL do lado do cliente. Ele está disponível para a maioria das plataformas, inclusive Linux, Windows e Mac OS.

Faça o download de curl e instale-o ou descompacte-o no seu sistema.

Como criar a solicitação JSON

Gostaríamos de solicitar detecção de pontos de referência e detecção de entidades da Web nesta imagem. A solicitação JSON tem esta aparência:

{
  "requests": [
    {
      "image": {
        "source": {
          "imageUri": "https://cloud.google.com/vision/images/rushmore.jpg"
        }
      },
      "features": [
        {
          "type": "LANDMARK_DETECTION",
          "maxResults": 1
        },
        {
          "type": "WEB_DETECTION",
          "maxResults": 2
        }
      ]
    }
  ]
}

Salve o código acima como um arquivo chamado request.json no diretório de trabalho.

Como enviar a solicitação

O curl é usado para enviar a solicitação para o Cloud Vision. Digite o seguinte na linha de comando:

curl -v -s -H "Content-Type: application/json" \
    https://vision.googleapis.com/v1/images:annotate?key=API_KEY \
    --data-binary @request.json

Será necessário especificar sua própria chave de API. Caso não a conheça, siga as instruções fornecidas no capítulo Autenticar da documentação da Vision API.

Resposta

A Cloud Vision API retorna a resposta. Depois que maxResults tiver sido especificado pelo JSON para retornar cada tipo de anotação, a resposta incluirá um resultado landmarkAnnotations e dois webEntities.

{
  "responses": [
    {
      "landmarkAnnotations": [
        {
          "mid": "/m/019dvv",
          "description": "Mount Rushmore",
          "score": 0.8757957,
          "boundingPoly": {
            "vertices": [
              {
                "x": 321,
                "y": 195
              },
              {
                "x": 777,
                "y": 195
              },
              {
                "x": 777,
                "y": 510
              },
              {
                "x": 321,
                "y": 510
              }
            ]
          },
          "locations": [
            {
              "latLng": {
                "latitude": 43.878264,
                "longitude": -103.45700740814209
              }
            }
          ]
        }
      ],
      "webDetection": {
        "webEntities": [
          {
            "entityId": "/m/019dvv",
            "score": 255.8336,
            "description": "Mount Rushmore National Memorial"
          },
          {
            "entityId": "/m/0373w4",
            "score": 12.14976,
            "description": "Crazy Horse Memorial"
          }
        ],
        "fullMatchingImages": [
          {
            "url": "https://tinahanagan.files.wordpress.com/2012/04/dsc_0597.jpg"
          }
        ],
        "partialMatchingImages": [
          {
            "url": "https://i1.wp.com/eightsails.files.wordpress.com/2016/10/img_2138.jpg"
          },
          {
            "url": "https://i1.wp.com/littlezenmonkey.com/wp-content/uploads/2016/05/IMG_6994.jpg"
          }
        ],
        "visuallySimilarImages": [
          {
            "url": "http://media.gettyimages.com/photos/the-famous-landmark-mount-rushmore-on-a-perfect-weather-day-picture-id106682515?s=170667a"
          },
          {
            "url": "http://www.clevelandseniors.com/images/funny/mount-rushmore.jpg"
          }
        ]
      }
    }
  ]
}
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação da API Cloud Vision
Precisa de ajuda? Acesse nossa página de suporte.