Crie uma app de contagem de ocupação com entrada de streaming remota

O Vertex AI Vision é uma plataforma com tecnologia de IA que pode usar para carregar, analisar e armazenar dados de vídeo . O Vertex AI Vision permite-lhe criar e implementar aplicações de IA. Pode criar soluções de Vertex AI Vision ponto a ponto tirando partido da integração do Vertex AI Vision com outros componentes do produto.

Para começar a implementar soluções com a plataforma Vertex AI Vision, reveja os seguintes conceitos e componentes do Vertex AI Vision:

  • Streams: representam uma camada de streaming de vídeo da sua solução. A fonte da stream pode ser um vídeo em direto (por exemplo, uma câmara IP) ou um ficheiro de vídeo (por exemplo, um ficheiro MP4).

  • Aplicações: ative a ligação entre uma stream e um processador de IA para realizar uma operação de aprendizagem automática no vídeo. Por exemplo, pode associar um stream de câmara a um modelo de IA que conta as pessoas que passam em frente à câmara.

  • Armazéns de conteúdo multimédia: armazenam o vídeo carregado por streams para o Google Cloud armazenamento. O armazenamento de dados neste destino permite-lhe consultar a saída da análise e os metadados dos processadores de IA usados em dados dos streams carregados.

Objetivos

Este tutorial mostra como fazer o seguinte:

  • Crie uma app de contagem de ocupação.
  • Implemente a sua app para utilização.
  • Configure um computador remoto para fazer stream de vídeo.
  • Carregue o vídeo de streaming para um nó de stream na sua app.
  • Pesquise vídeos no seu armazenamento do Media Warehouse da Vertex AI Vision.

Custos

Neste documento, usa os seguintes componentes faturáveis do Google Cloud:

Para gerar uma estimativa de custos com base na sua utilização prevista, use a calculadora de preços.

Os novos Google Cloud utilizadores podem ser elegíveis para uma avaliação sem custo financeiro.

Quando terminar as tarefas descritas neste documento, pode evitar a faturação contínua eliminando os recursos que criou. Para mais informações, consulte o artigo Limpe.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine and Vision AI APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the following roles to the service account: Vision AI > Vision AI Editor, Compute Engine > Compute Instance Admin (beta), Storage > Storage Object Viewer.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    7. Click Continue.
    8. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  6. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.
  7. Install the Google Cloud CLI.

  8. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  9. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  10. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  11. Verify that billing is enabled for your Google Cloud project.

  12. Enable the Compute Engine and Vision AI APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  13. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the following roles to the service account: Vision AI > Vision AI Editor, Compute Engine > Compute Instance Admin (beta), Storage > Storage Object Viewer.

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    7. Click Continue.
    8. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  14. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.
  15. Install the Google Cloud CLI.

  16. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  17. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  18. Função necessária apenas se copiar um ficheiro de vídeo de exemplo de um contentor do Cloud Storage.

    Crie uma aplicação de contagem de ocupação

    Depois de configurar o seu ambiente, o primeiro passo é criar a app que processa os seus dados. Pode considerar uma app como um pipeline automatizado que liga o seguinte:

    • Carregamento de dados: um feed de vídeo é carregado numa stream.
    • Análise de dados: pode adicionar um modelo de IA após a ingestão. Qualquer operação de visão por computador pode ser realizada nas informações de vídeo carregadas.
    • Armazenamento de dados: as duas versões do feed de vídeo (a stream original e a stream processada pelo modelo de IA) podem ser armazenadas num armazém de multimédia.

    Na Google Cloud consola, uma app é representada como um gráfico. Além disso, no Vertex AI Vision, um gráfico de apps tem de ter, pelo menos, dois nós: um nó de origem de vídeo (stream) e , pelo menos, mais um nó (um modelo de processamento ou um destino de saída).

    Crie uma app vazia

    Antes de poder preencher o gráfico de apps, tem de criar primeiro uma app vazia.

    Consola

    Crie uma app na Google Cloud consola.

    1. Abra o separador Aplicações do painel de controlo do Vertex AI Vision.

      Aceda ao separador Aplicações

    2. Clique no botão Criar.

    3. Introduza occupancy-count-app como o nome da app e escolha a sua região.

    4. Clique em Criar.

    Adicione nós de componentes de apps

    Depois de criar a aplicação vazia, pode adicionar os três nós ao gráfico da app:

    1. Nó de carregamento: o recurso de stream que carrega dados enviados a partir de uma instância de VM do Compute Engine que criar.
    2. Nó de processamento: o modelo de estatísticas de ocupação que atua sobre os dados carregados.
    3. Nó de armazenamento: o armazém de multimédia que armazena vídeos processados e também funciona como um armazém de metadados. O armazém de dados permite gerar informações de estatísticas sobre os dados de vídeo carregados, bem como armazenar informações que os modelos de IA inferem sobre os dados.

    Consola

    Adicione nós de componentes à sua app na consola.

    1. Abra o separador Aplicações do painel de controlo do Vertex AI Vision.

      Aceda ao separador Aplicações

    2. Na linha occupancy-count-app, selecione Ver gráfico. Isto permite aceder à visualização do gráfico do pipeline de processamento.

    Adicione um nó de carregamento de dados

    1. Para adicionar um nó de stream de entrada, selecione a opção Streams na secção Conetores do menu lateral.

    2. Na secção Origem do menu Stream que é aberto, selecione Adicionar streams.

    3. No menu Adicionar streams, escolha Registar novas streams e adicione occupancy-count-stream como o nome da stream.

    4. Para adicionar a stream ao gráfico de apps, clique em Adicionar streams.

    Adicione um nó de tratamento de dados

    1. Para adicionar o nó do modelo de contagem de ocupação, selecione a opção Estatísticas de ocupação na secção Modelos especializados do menu lateral.

    2. Deixe as seleções predefinidas Pessoas e Veículos.

    Adicione um nó de armazenamento de dados

    1. Para adicionar o nó de destino de saída (armazenamento), selecione a opção Media Warehouse do Vertex AI Vision na secção Conetores do menu lateral.

    2. No menu Media Warehouse da Vertex AI Vision, clique em Associar armazém.

    3. No menu Associar armazém, selecione Criar novo armazém. Dê o nome occupancy-count-warehouse ao armazém e deixe a duração do TTL em 14 dias.

    4. Clique no botão Criar para adicionar o armazém.

    Implemente a sua app para utilização

    Depois de criar a sua app integral com todos os componentes necessários, o último passo para usar a app é implementá-la.

    Consola

    1. Abra o separador Aplicações do painel de controlo do Vertex AI Vision.

      Aceda ao separador Aplicações

    2. Selecione Ver gráfico junto à app occupancy-count-app na lista.

    3. Na página do criador de gráficos de aplicações, clique no botão