A detecção de logotipos encontra logotipos de produtos famosos em uma imagem.
Logotipo solicitações de detecção
Configurar o projeto e a autenticação do Google Cloud
Detectar logotipos em uma imagem local
Use a API Vision para detectar atributos em um arquivo de imagem local.
Para solicitações REST, envie o conteúdo do arquivo de imagem como uma string codificada em base64 no corpo da sua solicitação.
Para solicitações gcloud
e da biblioteca de cliente, especifique o caminho para uma imagem local na
sua solicitação.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- 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==
- PROJECT_ID pelo ID do projeto no Google Cloud.
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": "LOGO_DETECTION" }, ] } ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-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 com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
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": [ { "logoAnnotations": [ { "mid": "/m/045c7b", "description": "google", "score": 0.980325, "boundingPoly": { "vertices": [ { "x": 12, "y": 42 }, { "x": 439, "y": 42 }, { "x": 439, "y": 285 }, { "x": 12, "y": 285 } ] } } ] } ] }
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 VisionGo.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 VisionNode.js.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 VisionPython.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 estas instruções:Instruções de configuração do Ruby na página das bibliotecas de cliente e, em seguida, visite oDocumentação de referência do Vision para Ruby.
Detectar logotipos em uma imagem remota
É possível usar a API Vision para realizar a detecção de recursos em um arquivo de imagem remoto localizado no Cloud Storage ou na Web. Para enviar uma solicitação de arquivo remoto, especifique o URL da Web do arquivo ou o URI do Cloud Storage no corpo da solicitação.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- 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/logo/google_logo.jpg
- PROJECT_ID pelo ID do projeto do Google Cloud.
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": "LOGO_DETECTION" }, ] } ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-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 com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
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": [ { "logoAnnotations": [ { "mid": "/m/045c7b", "description": "google", "score": 0.980325, "boundingPoly": { "vertices": [ { "x": 12, "y": 42 }, { "x": 439, "y": 42 }, { "x": 439, "y": 285 }, { "x": 12, "y": 285 } ] } } ] } ] }
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 VisionGo.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 VisionJava.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 VisionNode.js.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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 VisionPython.
Para autenticar no Vision, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
gcloud
Para realizar a detecção da propriedade de imagem, use o comando gcloud ml vision detect-logos
, como mostrado no exemplo a seguir:
gcloud ml vision detect-logos gs://cloud-samples-data/vision/logo/google_logo.jpg
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 estas instruções:Instruções de configuração do Ruby na página das bibliotecas de cliente e, em seguida, visite oDocumentação de referência do Vision para Ruby.
Teste agora
Teste a detecção de logotipos abaixo. É possível usar a imagem já especificada (gs://cloud-samples-data/vision/logo/google_logo.jpg
) ou determinar sua própria imagem. Envie a solicitação selecionando Executar.
Corpo da solicitação:
{ "requests": [ { "features": [ { "type": "LOGO_DETECTION" } ], "image": { "source": { "imageUri": "gs://cloud-samples-data/vision/logo/google_logo.jpg" } } } ] }