Editar

Share via


Analise conteúdo de vídeo com o Computer Vision e o Azure Machine Learning

Azure Machine Learning
Azure AI services
Azure Logic Apps
Azure Synapse Analytics
Azure Data Lake Storage

Este artigo descreve uma arquitetura que você pode usar para substituir a análise manual de imagens de vídeo por um processo de aprendizado de máquina automatizado e, com frequência, mais preciso.

Os logotipos FFmpeg e Jupyter Notebook são marcas comerciais de suas respetivas empresas. O uso destas marcas não implica qualquer endosso.

Arquitetura

Diagrama que mostra uma arquitetura para analisar o conteúdo do vídeo.

Transfira um ficheiro PowerPoint desta arquitetura.

Fluxo de Trabalho

  1. Uma coleção de imagens de vídeo, em formato MP4, é carregada no Armazenamento de Blobs do Azure. O ideal é que os vídeos entrem em um recipiente "bruto".
  2. Um pipeline pré-configurado no Aprendizado de Máquina do Azure reconhece que os arquivos de vídeo são carregados no contêiner e inicia um cluster de inferência para começar a separar as imagens de vídeo em quadros.
  3. FFmpeg, uma ferramenta de código aberto, decompõe o vídeo e extrai quadros. Você pode configurar quantos quadros por segundo são extraídos, a qualidade da extração e o formato do arquivo de imagem. O formato pode ser JPG ou PNG.
  4. O cluster de inferência envia as imagens para o Armazenamento do Azure Data Lake.
  5. Um aplicativo lógico pré-configurado que monitora o Armazenamento Data Lake deteta que novas imagens estão sendo carregadas. Ele inicia um fluxo de trabalho.
  6. O aplicativo lógico chama um modelo de visão personalizado pré-treinado para identificar objetos, recursos ou qualidades nas imagens. Como alternativa ou adicionalmente, ele chama um modelo de visão computacional (reconhecimento ótico de caracteres (OCR)) para identificar informações textuais nas imagens.
  7. Os resultados são recebidos em formato JSON. O aplicativo lógico analisa os resultados e cria pares chave-valor. Você pode armazenar os resultados em pools SQL dedicados do Azure que são provisionados pelo Azure Synapse Analytics.
  8. O Power BI fornece visualização de dados.

Componentes

  • O Armazenamento de Blobs do Azure fornece armazenamento de objetos para cargas de trabalho nativas da nuvem e repositórios de aprendizado de máquina. Nesta arquitetura, ele armazena os arquivos de vídeo carregados.
  • O Azure Machine Learning é um serviço de aprendizagem automática de nível empresarial para o ciclo de vida de aprendizagem automática de ponta a ponta.
  • O Armazenamento Azure Data Lake fornece armazenamento em nuvem massivamente escalável, de segurança aprimorada e econômico para cargas de trabalho de análise de alto desempenho.
  • A Visão Computacional faz parte dos serviços de IA do Azure. Ele é usado para recuperar informações sobre cada imagem.
  • A Visão Personalizada permite-lhe personalizar e incorporar análises de imagens de visão computacional de última geração para os seus domínios específicos.
  • Os Aplicativos Lógicos do Azure automatizam fluxos de trabalho conectando aplicativos e dados entre ambientes. Ele fornece uma maneira de acessar e processar dados em tempo real.
  • O Azure Synapse Analytics é um serviço de análise ilimitado que reúne integração de dados, armazenamento de dados corporativos e análise de big data.
  • O pool SQL dedicado (anteriormente SQL DW) é uma coleção de recursos de análise que são provisionados quando você usa o Azure Synapse SQL.
  • O Power BI é uma coleção de serviços de software, aplicativos e conectores que trabalham juntos para fornecer visualizações de seus dados.

Alternativas

  • O Azure Video Indexer é um serviço de análise de vídeo que usa IA para extrair informações acionáveis de vídeos armazenados. Você pode usá-lo sem qualquer experiência em aprendizado de máquina.
  • O Azure Data Factory é um serviço de integração de dados sem servidor totalmente gerenciado que ajuda você a construir processos de extração, transformação e carregamento (ETL) e extrair, carregar e transformar (ELT).
  • O Azure Functions é uma plataforma como serviço (PaaS) sem servidor que executa código de tarefa única sem exigir nova infraestrutura.
  • O Azure Cosmos DB é um banco de dados NoSQL totalmente gerenciado para desenvolvimento de aplicativos modernos.

Detalhes do cenário

Muitas indústrias gravam imagens de vídeo para detetar a presença ou ausência de um determinado objeto ou entidade ou para classificar objetos ou entidades. Monitorização de vídeo e análises são tradicionalmente realizadas manualmente. Estes processos são muitas vezes monótonos e propensos a erros, particularmente para tarefas que são difíceis para o olho humano. Você pode automatizar esses processos usando IA e aprendizado de máquina.

Uma gravação de vídeo pode ser separada em quadros individuais para que várias tecnologias possam analisar as imagens. Uma dessas tecnologias é a visão computacional: a capacidade de um computador identificar objetos e entidades em uma imagem.

Com a visão computacional, o monitoramento de imagens de vídeo torna-se automatizado, padronizado e potencialmente mais preciso. Um modelo de visão computacional pode ser treinado e, dependendo do caso de uso, você pode frequentemente obter resultados pelo menos tão bons quanto os da pessoa que treinou o modelo. Usando operações de aprendizado de máquina (MLOps) para melhorar o modelo continuamente, você pode esperar melhores resultados ao longo do tempo e reagir a alterações nos dados de vídeo ao longo do tempo.

Potenciais casos de utilização

Esse cenário é relevante para qualquer empresa que analise vídeos. Aqui estão alguns exemplos de casos de uso:

  • Agricultura. Monitorizar e analisar as condições das culturas e do solo ao longo do tempo. Usando drones ou UAVs, os agricultores podem gravar imagens de vídeo para análise.

  • Ciências do ambiente. Analise as espécies aquáticas para entender onde elas estão localizadas e como evoluem. Ao anexar câmeras subaquáticas aos barcos, os pesquisadores ambientais podem navegar pela costa para gravar imagens de vídeo. Eles podem analisar as imagens de vídeo para entender as migrações de espécies e como as populações de espécies mudam ao longo do tempo.

  • Controlo de tráfego. Classifique os veículos em categorias (SUV, carro, caminhão, motocicleta) e use as informações para planejar o controle de tráfego. Imagens de vídeo podem ser fornecidas por CCTV em locais públicos. A maioria das câmeras de CFTV gravar data e hora, que pode ser facilmente recuperado através de reconhecimento ótico de caracteres (OCR).

  • Garantia de qualidade. Monitorar e analisar o controle de qualidade em uma instalação de fabricação. Ao instalar câmeras na linha de produção, você pode treinar um modelo de visão computacional para detetar anomalias.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, um conjunto de princípios orientadores que você pode usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Fiabilidade

A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

Uma carga de trabalho confiável é aquela que é resiliente e disponível. Resiliência é a capacidade do sistema de se recuperar de falhas e continuar a funcionar. O objetivo da resiliência é fazer com que a aplicação volte para um estado totalmente funcional após a ocorrência de uma falha. A disponibilidade é uma medida de se os usuários podem acessar sua carga de trabalho quando precisam.

Para obter as garantias de disponibilidade dos serviços do Azure nesta solução, consulte estes recursos:

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

Considere os seguintes recursos:

Otimização de custos

A otimização de custos consiste em reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Aqui estão algumas diretrizes para otimizar custos:

  • Use a estratégia de pagamento conforme o uso para sua arquitetura e expanda conforme necessário, em vez de investir em recursos de grande escala no início.
  • Considere os custos de oportunidade em sua arquitetura e o equilíbrio entre a vantagem de pioneiro versus o seguimento rápido. Use a calculadora de preços para estimar o custo inicial e os custos operacionais.
  • Estabeleça políticas, orçamentos e controles que definam limites de custo para sua solução.

Excelência operacional

A excelência operacional abrange os processos operacionais que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, consulte Visão geral do pilar de excelência operacional.

As implantações precisam ser confiáveis e previsíveis. Aqui estão algumas diretrizes:

  • Automatize implantações para reduzir a chance de erro humano.
  • Implemente um processo de implantação rápido e rotineiro para evitar retardar o lançamento de novos recursos e correções de bugs.
  • Reverta ou avance rapidamente se uma atualização causar problemas.

Eficiência de desempenho

Eficiência de desempenho é a capacidade da sua carga de trabalho para dimensionar para satisfazer as exigências que os utilizadores lhe colocam de forma eficiente. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.

O uso adequado do dimensionamento e a implementação de ofertas de PaaS com escalonamento integrado são as principais maneiras de alcançar a eficiência de desempenho.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

Outros contribuidores:

  • Mick Alberts - Brasil | Redator Técnico
  • Brandon Cowen - Brasil | Arquiteto de Soluções Cloud Sênior – Data & AI
  • Arash Mosharraf - Brasil | Arquiteto de Soluções Cloud Sênior – Data & AI
  • Priyanshi Singh - Brasil | Arquiteto de Soluções Cloud Sênior – Data & AI
  • Julian Soh - Brasil | Diretor Especialista – Dados & AI

Para ver perfis não públicos do LinkedIn, inicie sessão no LinkedIn.

Próximos passos