Create an API Key

Verificar meu progresso

/ 25

Upload an Image to a Cloud Storage bucket

Verificar meu progresso

/ 25

Upload an image for Face Detection to your bucket

Verificar meu progresso

/ 25

Upload an image for Landmark Annotation to your bucket

Verificar meu progresso

/ 25

Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.

GSP037

Laboratórios autoguiados do Google Cloud

Informações gerais

A API Cloud Vision é um serviço baseado em nuvem que permite analisar imagens e extrair informações. Ela pode ser usada para detectar objetos, rostos e textos em imagens. Com o encapsulamento de modelos poderosos de machine learning em uma API REST simples, a API Cloud Vision ajuda você a entender o conteúdo de imagens.

Neste laboratório, você vai aprender a enviar imagens para a API Cloud Vision e ver de perto como ela detecta objetos, rostos e pontos de referência.

Objetivos

Neste laboratório, você vai aprender a realizar as seguintes tarefas:

  • Criar uma solicitação para a API Cloud Vision e chamar a API com curl.
  • Usar os métodos de detecção facial, de rótulos e de pontos de referência da API.

Configuração e requisitos

Antes de clicar no botão Começar o Laboratório

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.

Como iniciar seu laboratório e fazer login no console do Google Cloud

  1. Clique no botão Começar laboratório. Se for preciso pagar por ele, uma caixa de diálogo vai aparecer para você selecionar a forma de pagamento. À direita, você encontra o painel Configuração e acesso ao laboratório com as seguintes informações:

    • O botão Abrir console do Google Cloud
    • As credenciais temporárias (nome de usuário e senha) que você vai usar no laboratório
    • Outros dados, se necessários

    O timer do laboratório fica na parte de cima da página e mostra o tempo restante.

  2. Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.

    O laboratório ativa os recursos e depois abre a página "Login" em outra guia.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Login.

    {{{user_0.username | "Username"}}}

    Você também encontra o nome de usuário no painel Configuração e acesso ao laboratório.

  4. Clique em Avançar.

  5. Copie a Senha abaixo e cole na caixa de diálogo Olá!.

    {{{user_0.password | "Password"}}}

    Você também encontra a senha no painel Configuração e acesso ao laboratório.

  6. Clique em Avançar.

    Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, talvez receba cobranças adicionais.
  7. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes sem custo financeiro.

Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.

Observação: para acessar os produtos e serviços do Google Cloud, clique no Menu de navegação ou digite o nome do serviço ou produto no campo Pesquisar. Ícone do menu de navegação e campo de pesquisa

Ativar o Cloud Shell

O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. Clique em Ativar o Cloud Shell Ícone "Ativar o Cloud Shell" na parte de cima do console do Google Cloud.

  2. Clique nas seguintes janelas:

    • Continue na janela de informações do Cloud Shell.
    • Autorize o Cloud Shell a usar suas credenciais para fazer chamadas de APIs do Google Cloud.

Depois de se conectar, você verá que sua conta já está autenticada e que o projeto está configurado com seu Project_ID, . A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  1. (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
  1. Clique em Autorizar.

Saída:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project

Saída:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Observação: consulte a documentação completa da gcloud no Google Cloud no guia de visão geral da gcloud CLI.

Tarefa 1: criar uma chave de API

Nesta tarefa, você vai gerar uma chave de API para transmitir o URL da solicitação na preparação para usar curl para enviar uma solicitação à API Vision.

  1. Para criar uma chave de API, acesse o Menu de navegação e selecione APIs e serviços > Credenciais no console do Cloud.

  2. Clique em Criar credenciais e selecione Chave de API.

Página "Criar credenciais" exibindo a opção "Chave de API"

  1. No painel lateral Criar chave de API que aparece, em APIs que podem ser acessadas usando esta chave, clique no menu suspenso (Selecionar APIs).

  2. Pesquise ou role a tela para encontrar a API Cloud Vision e marque a caixa.

  3. Clique em OK.

  4. Clique em Criar.

  5. Copie a chave de API gerada e clique em Fechar.

Clique em Verificar meu progresso abaixo para conferir seu progresso no laboratório.

Criar uma chave de API

Em seguida, salve a chave em uma variável de ambiente para não ter que inserir o valor dela em cada solicitação.

  1. Atualize o comando abaixo para substituir o texto de preenchimento pela chave de API que você copiou. Depois, execute o comando no Cloud Shell para definir o valor como uma variável de ambiente:
export API_KEY=<YOUR_API_KEY>

Tarefa 2: fazer upload de uma imagem em um bucket do Cloud Storage

Há duas maneiras de enviar uma imagem para detecção na API Cloud Vision: enviando uma string de imagem codificada em base64 ou transmitindo o URL de um arquivo armazenado no Cloud Storage.

Este laboratório usa a abordagem de URL do Cloud Storage. A primeira etapa é criar um bucket do Cloud Storage para armazenar suas imagens.

  1. No Menu de navegação, selecione Cloud Storage > Buckets. Ao lado de Buckets, clique em Criar.

  2. Dê um nome exclusivo ao bucket: -bucket.

  3. Depois de dar o nome ao bucket, clique em Escolher como controlar o acesso aos objetos.

  4. Desmarque a caixa de seleção Aplicar a prevenção do acesso público neste bucket e selecione o botão de opção Detalhado.

Mantenha o padrão em todas as outras configurações do bucket.

  1. Clique em Criar.

Upload de uma imagem para o bucket

  1. Clique com o botão direito na imagem de donuts, selecione Salvar imagem como e salve no seu computador com o nome donuts.png.

Donuts

  1. Acesse o bucket que você acabou de criar e clique em Fazer upload > Fazer upload de arquivos. Depois, selecione donuts.png e clique em Abrir.

Página de detalhes do bucket com o botão FAZER UPLOAD DE ARQUIVOS em destaque

O arquivo deve aparecer no seu bucket.

Agora você precisa tornar essa imagem pública.

  1. Clique nos três pontos ao lado da sua imagem e selecione Editar acesso.

Menu &quot;Mais opções&quot; aberto com a opção &quot;Editar permissões&quot; em destaque

  1. Clique em Adicionar entrada e digite o seguinte:

    • Entidade: Público
    • Nome: allUsers
    • Acesso: Leitor
  2. Em seguida, clique em Salvar.

Com o arquivo no seu bucket, você está com tudo pronto para criar uma solicitação da API Cloud Vision, transmitindo o URL da imagem de donuts.

Clique em Verificar meu progresso abaixo para conferir seu progresso no laboratório.

Fazer upload de uma imagem para o bucket

Tarefa 3: criar a solicitação

Crie um arquivo request.json no diretório principal do Cloud Shell.

  1. Com o editor de código do Cloud Shell (clicando no ícone de lápis na barra de ferramentas do Cloud Shell)

Botão &quot;Abrir editor&quot;

ou o editor de linha de comando de sua preferência (nano, vim ou emacs), crie um arquivo request.json.

  1. Cole este código no arquivo request.json:
{ "requests": [ { "image": { "source": { "gcsImageUri": "gs://{{{project_0.project_id | PROJECT_ID}}}-bucket/donuts.png" } }, "features": [ { "type": "LABEL_DETECTION", "maxResults": 10 } ] } ] }
  1. Salve o arquivo.

Ativar o Gemini Code Assist no Cloud Shell IDE

Você pode usar o Gemini Code Assist em um ambiente de desenvolvimento integrado (IDE), como o Cloud Shell, para receber orientações sobre o código ou resolver problemas com ele. Antes de começar a usar o Gemini Code Assist, você precisa ativá-lo.

  1. No Cloud Shell, ative a API Gemini para Google Cloud com o seguinte comando:
gcloud services enable cloudaicompanion.googleapis.com
  1. Clique em Abrir editor na barra de ferramentas do Cloud Shell.
Observação: para abrir o editor do Cloud Shell, clique em Abrir editor na barra de ferramentas do Cloud Shell. Você pode alternar o Cloud Shell e o editor de código clicando em Abrir editor ou Abrir terminal, conforme necessário.
  1. Clique em Cloud Code - Sem projeto na barra de status na parte de baixo da tela.

  2. Autorize o plug-in conforme instruído. Se um projeto não for selecionado automaticamente, clique em Selecionar um projeto do Google Cloud e escolha .

  3. Verifique se o projeto do Google Cloud () aparece na mensagem de status do Cloud Code na barra de status.

Tarefa 4: executar a detecção de rótulos

O primeiro recurso da API Cloud Vision que você vai conhecer é a detecção de rótulos. O método utilizado retorna uma lista de rótulos (palavras) que identificam o conteúdo da sua imagem.

  1. No terminal do Cloud Shell, execute o comando curl para chamar a API Cloud Vision e salvar a resposta no arquivo label_detection.json:
curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json https://vision.googleapis.com/v1/images:annotate?key=${API_KEY} -o label_detection.json && cat label_detection.json

A resposta será algo assim:

Saída:

{ "responses": [ { "labelAnnotations": [ { "mid": "/m/01dk8s", "description": "Powdered sugar", "score": 0.9861496, "topicality": 0.9861496 }, { "mid": "/m/01wydv", "description": "Beignet", "score": 0.9565117, "topicality": 0.9565117 }, { "mid": "/m/02wbm", "description": "Food", "score": 0.9424965, "topicality": 0.9424965 }, { "mid": "/m/0hnyx", "description": "Pastry", "score": 0.8173416, "topicality": 0.8173416 }, { "mid": "/m/02q08p0", "description": "Dish", "score": 0.8076026, "topicality": 0.8076026 }, { "mid": "/m/01ykh", "description": "Cuisine", "score": 0.79036003, "topicality": 0.79036003 }, { "mid": "/m/03nsjgy", "description": "Kourabiedes", "score": 0.77726763, "topicality": 0.77726763 }, { "mid": "/m/06gd3r", "description": "Angel wings", "score": 0.73792106, "topicality": 0.73792106 }, { "mid": "/m/06x4c", "description": "Sugar", "score": 0.71921736, "topicality": 0.71921736 }, { "mid": "/m/01zl9v", "description": "Zeppole", "score": 0.7111677, "topicality": 0.7111677 } ] } ] }

A API conseguiu identificar o tipo específico dos donuts: com açúcar de confeiteiro. Ótimo! Para cada rótulo encontrado pela API Vision, ela retorna estas informações:

  1. No editor do Cloud Shell, navegue até label_detection.json. Essa ação ativa o Gemini Code Assist, como indicado pela presença do ícone Gemini Code Assist: ações Inteligentes no canto superior direito do editor.

Para ajudar você a aumentar a produtividade e reduzir a troca de contexto, o Gemini Code Assist oferece ações inteligentes com tecnologia de IA diretamente no seu editor de código. Nesta seção, você vai pedir ajuda ao Gemini Code Assist para explicar a resposta da API Cloud Vision a um membro da equipe.

  1. Clique no ícone Gemini Code Assist: ações Inteligentes Gemini Code Assist: ações Inteligentes e selecione Explique isso.

  2. O Gemini Code Assist abre um painel de conversa com o comando Explique isso preenchido. Na caixa de texto inline da conversa do Code Assist, substitua o comando preenchido com este e depois clique em Enviar:

You are a Machine Learning Engineer at Cymbal AI. A new team member needs help understanding this Cloud Vision API response. Explain the label_detection.json file in detail. Break down its key components and their function within the JSON code. For the suggested improvements, don't make any changes to the file's content.

As explicações detalhadas sobre a resposta da API Cloud Vision no código label_detection.json serão exibidas no chat do Gemini Code Assist.

Tarefa 5: executar a detecção na web

Além de identificar rótulos para o que aparece na sua imagem, a API Cloud Vision também pode vasculhar a internet em busca de detalhes adicionais sobre ela. Com o método WebDetection da API, você recebe muitos dados interessantes:

  • Uma lista das entidades identificadas na sua imagem, gerada com base no conteúdo de páginas que contêm imagens semelhantes.
  • URLs de imagens correspondentes (exatas e parciais) encontradas na web, além dos URLs dessas páginas.
  • URLs de imagens semelhantes, como na pesquisa reversa de imagens.

Para testar a detecção na web, use a mesma imagem dos beignets e altere uma linha no arquivo request.json. Para tentar algo novo, use uma imagem completamente diferente.

  1. No editor do Cloud Shell, ainda no mesmo diretório, navegue até request.json e abra o arquivo.

  2. Clique no ícone Gemini Code Assist: ações Inteligentes Gemini Code Assist na barra de ferramentas.

Além de receber explicações detalhadas, você também pode aproveitar o poder da IA do Gemini Code Assist para modificar seu código diretamente no editor. Nesse caso, você deixou o Gemini Code Assist ajudar na edição do conteúdo do arquivo request.json.

  1. Para editar o arquivo request.json, cole o seguinte comando no campo de texto inline do Gemini Code Assist que é aberto na barra de ferramentas.
In the request.json file, update the features list, change type from LABEL_DETECTION to WEB_DETECTION.
  1. Para que o Gemini Code Assist modifique o código conforme solicitado, pressione ENTER.

  2. Quando solicitado na visualização Gemini Diff, clique em Aceitar.

O conteúdo do arquivo request.json deve ser algo assim:

{ "requests": [ { "image": { "source": { "gcsImageUri": "gs://{{{project_0.project_id | PROJECT_ID}}}-bucket/donuts.png" } }, "features": [ { "type": "WEB_DETECTION", "maxResults": 10 } ] } ] }
  1. No terminal do Cloud Shell, execute o comando curl abaixo para chamar a API Cloud Vision:
curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json https://vision.googleapis.com/v1/images:annotate?key=${API_KEY}
  1. Analise os detalhes da resposta, começando com webEntities. Confira algumas das entidades retornadas por essa imagem:
{ "responses": [ { "webDetection": { "webEntities": [ { "entityId": "/m/0z5n", "score": 0.8868, "description": "Application programming interface" }, { "entityId": "/m/07kg1sq", "score": 0.3139, "description": "Encapsulation" }, { "entityId": "/m/0105pbj4", "score": 0.2713, "description": "Google Cloud Platform" }, { "entityId": "/m/01hyh_", "score": 0.2594, "description": "Machine learning" }, ... ]

Essa imagem já foi usada em várias apresentações sobre APIs de Cloud ML, e é por isso que a API identificou as entidades "Machine learning" e "Google Cloud Platform".

Se você inspecionar os URLs em fullMatchingImages, partialMatchingImages e pagesWithMatchingImages, vai perceber que muitos deles apontam para o site deste laboratório (supermetalinguístico).

Digamos que você queira encontrar outras fotos de beignets, mas não as mesmas imagens. É aí que entra a parte visuallySimilarImages da resposta da API. Confira algumas das imagens visualmente semelhantes que ela encontrou:

"visuallySimilarImages": [ { "url": "https://media.istockphoto.com/photos/cafe-du-monde-picture-id1063530570?k=6&m=1063530570&s=612x612&w=0&h=b74EYAjlfxMw8G-G_6BW-6ltP9Y2UFQ3TjZopN-pigI=" }, { "url": "https://s3-media2.fl.yelpcdn.com/bphoto/oid0KchdCqlSqZzpznCEoA/o.jpg" }, { "url": "https://s3-media1.fl.yelpcdn.com/bphoto/mgAhrlLFvXe0IkT5UMOUlw/348s.jpg" }, ... ]

Acesse estes URLs para ver imagens parecidas:

imagem 1 de beignet com açúcar de confeiteiro

imagem 2 de beignet com açúcar de confeiteiro

imagem 3 de beignet com açúcar de confeiteiro

E agora você provavelmente está morrendo de vontade de comer um beignet com açúcar de confeiteiro (foi mal)! Esse processo é semelhante a procurar uma imagem nas Imagens do Google.

Com o Cloud Vision, você pode acessar essa funcionalidade por meio de uma API REST fácil de usar e integrá-la diretamente aos seus aplicativos.

Tarefa 6: realizar detecção facial

Em seguida, conheça os métodos de detecção facial da API Vision.

O método de detecção de rosto retorna dados sobre os rostos encontrados, inclusive as emoções e o local da imagem.

Upload de uma nova imagem

Para usar esse método, envie uma nova imagem com rostos para o seu bucket do Cloud Storage.

  1. Clique com o botão direito do mouse na imagem abaixo, selecione Salvar imagem como e salve no seu computador com o nome selfie.png.

Uma selfie mostrando duas outras pessoas tirando selfies

  1. Agora, faça o upload para o seu bucket do Cloud Storage da mesma forma que você fez antes e torne-o público.

Clique em Verificar meu progresso abaixo para conferir seu progresso no laboratório.

Fazer upload de uma imagem no bucket para realizar a detecção facial

Atualização do arquivo de solicitação

  1. No editor do Cloud Shell, ainda no mesmo diretório, navegue até request.json.

  2. Clique no ícone Gemini Code Assist: ações Inteligentes Gemini Code Assist na barra de ferramentas.

  3. Para ajudar na atualização do seu arquivo request.json, cole o comando abaixo no campo de texto inline do Gemini Code Assist que abre na barra de ferramentas.

Update the JSON file request.json to achieve three specific changes: * Update the gcsImageUri value from donuts.png to selfie.png. * Replace the existing features array with two new feature types: FACE_DETECTION and LANDMARK_DETECTION. * Don't want maxResults result.
  1. Para que o Gemini Code Assist modifique o código conforme solicitado, pressione ENTER.

  2. Quando solicitado na visualização Gemini Diff, clique em Aceitar.

Seu arquivo de solicitação atualizado deve ser parecido com este:

{ "requests": [ { "image": { "source": { "gcsImageUri": "gs://{{{project_0.project_id | PROJECT_ID}}}-bucket/selfie.png" } }, "features": [ { "type": "FACE_DETECTION" }, { "type": "LANDMARK_DETECTION" } ] } ] }

Chamada da API Vision e análise da resposta

  1. No terminal do Cloud Shell, execute o comando curl abaixo para chamar a API Cloud Vision:
curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json https://vision.googleapis.com/v1/images:annotate?key=${API_KEY}
  1. Observe o objeto faceAnnotations na resposta. Veja que a API retorna um objeto para cada rosto encontrado na imagem (nesse caso são três). Aqui está uma versão parcial da resposta:
{ "faceAnnotations": [ { "boundingPoly": { "vertices": [ { "x": 669, "y": 324 }, ... ] }, "fdBoundingPoly": { ... }, "landmarks": [ { "type": "LEFT_EYE", "position": { "x": 692.05646, "y": 372.95868, "z": -0.00025268539 } }, ... ], "rollAngle": 0.21619819, "panAngle": -23.027969, "tiltAngle": -1.5531756, "detectionConfidence": 0.72354823, "landmarkingConfidence": 0.20047489, "joyLikelihood": "LIKELY", "sorrowLikelihood": "VERY_UNLIKELY", "angerLikelihood": "VERY_UNLIKELY", "surpriseLikelihood": "VERY_UNLIKELY", "underExposedLikelihood": "VERY_UNLIKELY", "blurredLikelihood": "VERY_UNLIKELY", "headwearLikelihood": "VERY_LIKELY" } ... } }
  • boundingPoly oferece as coordenadas x,y ao redor do rosto na imagem.
  • fdBoundingPoly é um quadro menor que o boundingPoly focado especificamente na área da pele do rosto.
  • landmarks é uma matriz de objetos para cada característica facial, incluindo algumas que talvez você nem conheça. Isso indica o tipo de ponto de referência e a posição 3D desse atributo (coordenadas x, y, z), em que a coordenada z representa a profundidade. Os valores restantes dão mais detalhes sobre o rosto, como a probabilidade de alegria, tristeza, raiva e surpresa.

A resposta que você recebeu se refere à pessoa que está de pé mais ao fundo da imagem. É possível notar que ela está fazendo uma cara um pouco engraçada, o que explica joyLikelihood ser LIKELY.

Tarefa 7: realizar anotação de pontos de referência

A detecção de pontos de referência é capaz de identificar marcos famosos (e também os mais obscuros). O método retorna o nome do ponto de referência, suas coordenadas de latitude e longitude e a localização exata de onde ele foi identificado na imagem.

Upload de uma nova imagem

Para usar esse método, faça upload de uma nova imagem no bucket do Cloud Storage.

  1. Clique com o botão direito do mouse na imagem abaixo, selecione Salvar imagem como e salve no seu computador como city.png.

Imagem de uma cidade

Citação: Catedral de São Basílio, Moscou, Rússia (19 de dezembro de 2019) por Adrien Wodey no Unsplash, um repositório de mídia sem custo financeiro. Fonte: https://unsplash.com/photos/multicolored-dome-temple-yjyWCNx0J1U. O arquivo está licenciado sob a licença do Unsplash.

  1. Agora, faça o upload para o seu bucket do Cloud Storage da mesma forma que você fez antes e torne-o público.

Clique em Verificar meu progresso abaixo para conferir seu progresso no laboratório.

Fazer upload de uma imagem no bucket para realizar a anotação de pontos de referência

Atualização do arquivo de solicitação

  • Agora, atualize o arquivo request.json com o código abaixo, que inclui o URL da nova imagem e utiliza a detecção de pontos de referência:
{ "requests": [ { "image": { "source": { "gcsImageUri": "gs://{{{project_0.project_id | PROJECT_ID}}}-bucket/city.png" } }, "features": [ { "type": "LANDMARK_DETECTION", "maxResults": 10 } ] } ] }

Chamada da API Vision e análise da resposta

  1. No terminal do Cloud Shell, execute o comando curl abaixo para chamar a API Cloud Vision:
curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json https://vision.googleapis.com/v1/images:annotate?key=${API_KEY}
  1. Fique de olho na parte landmarkAnnotations da resposta:
"landmarkAnnotations": [ { "mid": "/m/0hm_7", "description": "Red Square", "score": 0.8557956, "boundingPoly": { "vertices": [ {}, { "x": 503 }, { "x": 503, "y": 650 }, { "y": 650 } ] }, "locations": [ { "latLng": { "latitude": 55.753930299999993, "longitude": 37.620794999999994 } ...

A API Cloud Vision foi capaz de identificar onde a foto foi tirada e forneceu as coordenadas geográficas do local (Catedral de São Basílio na Praça Vermelha, Moscou, Rússia).

Os valores nessa resposta devem ser semelhantes à labelAnnotations citada anteriormente:

  • O mid do ponto de referência
  • O nome (description)
  • Um score de confiança
  • boundingPoly mostra a região na imagem onde o ponto de referência foi identificado.
  • A chave locations informa as coordenadas de latitude e longitude da imagem.

Tarefa 8: realizar a localização de objetos

A API Vision é capaz de detectar e extrair vários objetos de uma imagem com a Localização de objetos. Ela identifica vários itens em uma imagem e fornece uma LocalizedObjectAnnotation para cada um. Cada LocalizedObjectAnnotation identifica informações sobre o objeto, sua posição e os limites retangulares da região da imagem que o contém.

A localização de objetos também identifica itens significativos e menos proeminentes em uma imagem.

As informações dos objetos são retornadas apenas em inglês. O Cloud Translation é capaz de traduzir rótulos em inglês para vários idiomas diferentes.

Para adotar esse método, é só utilizar uma imagem que já existe na internet e atualizar o arquivo request.json.

Atualização do arquivo de solicitação

  • Atualize o arquivo request.json com as informações abaixo. Elas incluem o URL da nova imagem e usam a localização de objetos.
{ "requests": [ { "image": { "source": { "imageUri": "https://cloud.google.com/vision/docs/images/bicycle_example.png" } }, "features": [ { "maxResults": 10, "type": "OBJECT_LOCALIZATION" } ] } ] }

Chamada da API Vision e análise da resposta

  1. No terminal do Cloud Shell, execute o comando curl abaixo para chamar a API Cloud Vision:
curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json https://vision.googleapis.com/v1/images:annotate?key=${API_KEY}
  1. Agora fique de olho na parte localizedObjectAnnotations da resposta:
{ "responses": [ { "localizedObjectAnnotations": [ { "mid": "/m/01bqk0", "name": "Bicycle wheel", "score": 0.89648587, "boundingPoly": { "normalizedVertices": [ { "x": 0.32076266, "y": 0.78941387 }, { "x": 0.43812272, "y": 0.78941387 }, { "x": 0.43812272, "y": 0.97331065 }, { "x": 0.32076266, "y": 0.97331065 } ] } }, { "mid": "/m/0199g", "name": "Bicycle", "score": 0.886761, "boundingPoly": { "normalizedVertices": [ { "x": 0.312, "y": 0.6616471 }, { "x": 0.638353, "y": 0.6616471 }, { "x": 0.638353, "y": 0.9705882 }, { "x": 0.312, "y": 0.9705882 } ] } }, ...

Como você pode ver, a API Vision foi capaz de identificar que esta imagem contém uma bicicleta e uma roda de bicicleta. Os valores na resposta devem ser semelhantes aos da resposta labelAnnotations acima: o mid do objeto, o nome dele (name), um score de confiança e o boundingPoly mostram a região da imagem em que o objeto foi identificado.

Além disso, boundingPoly tem uma chave normalizedVertices, que fornece as coordenadas do objeto na imagem. Essas coordenadas são normalizadas em um intervalo de 0 a 1, em que 0 representa o canto superior esquerdo da imagem e 1 representa o canto inferior direito.

Excelente! Você usou a API Vision para analisar uma imagem e extrair informações sobre os objetos que estão nela.

Tarefa 9: testar outros métodos da API Vision

Você acabou de conhecer os métodos de detecção facial, de rótulos, de pontos de referência e de localização de objetos da API Vision, mas ainda há três outros que você não conhece. Consulte a documentação do método images.annotate para saber mais sobre eles:

  • Detecção de logotipos: identifica logotipos comuns e os locais deles em uma imagem.
  • Detecção de pesquisa segura: determina se uma imagem contém conteúdo explícito. É útil para aplicativos com conteúdo gerado pelo usuário. As imagens podem ser filtradas com base em quatro fatores: conteúdo adulto, médico, violento e spoofing.
  • Detecção de texto: usa OCR para extrair textos de imagens. Esse método pode até mesmo identificar o idioma do texto presente em uma imagem.

Parabéns!

Você aprendeu a analisar imagens com a API Vision. Neste laboratório, você enviou à API o URL do Cloud Storage de várias imagens, e ela retornou os rótulos, rostos, pontos de referência e objetos identificados em cada uma delas. Também é possível enviar à API uma string de imagem codificada em base64, o que é muito útil para analisar imagens armazenadas diretamente em um banco de dados ou na memória.

Próximas etapas/Saiba mais

Treinamento e certificação do Google Cloud

Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.

Manual atualizado em 2 de junho de 2026

Laboratório testado em 2 de junho de 2026

Copyright 2026 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.

Antes de começar

  1. Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
  2. Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
  3. No canto superior esquerdo da tela, clique em Começar o laboratório

Usar a navegação anônima

  1. Copie o nome de usuário e a senha fornecidos para o laboratório
  2. Clique em Abrir console no modo anônimo

Fazer login no console

  1. Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
  2. Aceite os termos e pule a página de recursos de recuperação
  3. Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

Um laboratório por vez

Confirme para encerrar todos os laboratórios atuais e iniciar este

Use a navegação anônima para executar o laboratório

A melhor maneira de executar este laboratório é usando uma janela de navegação anônima ou privada. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.