As dicas de corte sugerem vértices em uma região de corte de uma imagem.

Dica de corte aplicada (proporção 2: 1):

Solicitações de detecção de dica de corte
Configurar autenticação e projeto do GCP
Detectar dicas de corte em uma imagem local
A API Vision pode realizar a detecção de recursos em um arquivo de imagem local enviando o conteúdo do arquivo de imagem como uma string codificada em base64 no corpo da solicitação.
REST e LINHA DE CMD
Antes de usar os dados da solicitação abaixo, faça estas substituições:
- BASE64_ENCODED_IMAGE: a representação
base64 (string ASCII) dos dados da imagem binária. Essa string precisa ser semelhante à seguinte:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
Considerações específicas de campo:
cropHintsParams.aspectRatios
- um ponto flutuante que corresponde às proporções especificadas para suas imagens (largura:altura). É possível fornecer até 16 proporções de corte.
Método HTTP e URL:
POST https://vision.googleapis.com/v1/images:annotate
Corpo JSON da solicitação:
{ "requests": [ { "image": { "content": "BASE64_ENCODED_IMAGE" }, "features": [ { "type": "CROP_HINTS" } ], "imageContext": { "cropHintsParams": { "aspectRatios": [ 2.0 ] } } } ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/images:annotate"
PowerShell
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK
e a resposta no formato JSON.
Resposta:
{ "responses": [ { "cropHintsAnnotation": { "cropHints": [ { "boundingPoly": { "vertices": [ { "y": 520 }, { "x": 2369, "y": 520 }, { "x": 2369, "y": 1729 }, { "y": 1729 } ] }, "confidence": 0.79999995, "importanceFraction": 0.66999996 } ] } } ] }
Go
Antes de testar esta amostra, siga as instruções de configuração do Go no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Go.
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido da API Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Java.
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Node.js.
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Python.
Outras linguagens
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para .NET.
PHP: Siga as Instruções de configuração do PHP na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para Ruby.
Detectar dicas de corte em uma imagem remota
Para comodidade, a API Vision pode realizar a detecção de recursos diretamente em um arquivo de imagem localizado no Google Cloud Storage ou na Web sem a necessidade de enviar o conteúdo do arquivo de imagem no corpo da solicitação.
REST e LINHA DE CMD
Antes de usar os dados da solicitação abaixo, faça estas substituições:
- CLOUD_STORAGE_IMAGE_URI: o caminho para um arquivo de imagem
válido em um bucket do Cloud Storage. Você precisa ter, pelo menos, privilégios de leitura para o arquivo.
Exemplo:
gs://cloud-samples-data/vision/crop_hints/bubble.jpeg
Considerações específicas de campo:
cropHintsParams.aspectRatios
- um ponto flutuante que corresponde às proporções especificadas para suas imagens (largura:altura). É possível fornecer até 16 proporções de corte.
Método HTTP e URL:
POST https://vision.googleapis.com/v1/images:annotate
Corpo JSON da solicitação:
{ "requests": [ { "image": { "source": { "gcsImageUri": "CLOUD_STORAGE_IMAGE_URI" } }, "features": [ { "type": "CROP_HINTS" } ], "imageContext": { "cropHintsParams": { "aspectRatios": [ 2.0 ] } } } ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/images:annotate"
PowerShell
Salve o corpo da solicitação em um arquivo chamado request.json
e execute o comando a seguir:
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK
e a resposta no formato JSON.
Resposta:
{ "responses": [ { "cropHintsAnnotation": { "cropHints": [ { "boundingPoly": { "vertices": [ { "y": 520 }, { "x": 2369, "y": 520 }, { "x": 2369, "y": 1729 }, { "y": 1729 } ] }, "confidence": 0.79999995, "importanceFraction": 0.66999996 } ] } } ] }
Java
Antes de testar esta amostra, siga as instruções de configuração do Java no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Java.
Go
Antes de testar esta amostra, siga as instruções de configuração do Go no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Go.
Node.js
Antes de testar esta amostra, siga as instruções de configuração do Node.js no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Node.js.
Python
Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do Vision: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vision para Python.
gcloud
Para realizar a detecção de texto, use o comando
gcloud ml vision suggest-crop
,
conforme mostrado neste exemplo:
gcloud ml vision suggest-crop gs://cloud-samples-data/vision/crop_hints/bubble.jpeg
Outras linguagens
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para .NET.
PHP: Siga as Instruções de configuração do PHP na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência do Vision para Ruby.
Testar
Tente a detecção da dica de corte abaixo. É possível usar a imagem já especificada (gs://cloud-samples-data/vision/crop_hints/bubble.jpeg
) ou determinar sua própria imagem. Envie a solicitação selecionando Executar.

Corpo da solicitação:
{ "requests": [ { "image": { "source": { "gcsImageUri": "gs://cloud-samples-data/vision/crop_hints/bubble.jpeg" } }, "features": [ { "type": "CROP_HINTS" } ], "imageContext": { "cropHintsParams": { "aspectRatios": [ 2 ] } } } ] }