Uma empresa de serviços públicos implanta drones para inspecionar centenas de quilômetros de linhas de transmissão. Um departamento de polícia extrai horas de filmagens de câmeras de trânsito para investigar um atropelamento com fuga. Uma equipe de planejamento urbano aproveita filmagens de câmeras para analisar o fluxo de pedestres e de tráfego.
Terabytes de dados de vídeo são gerados todos os dias, os quais podem fornecer insights valiosos sobre tudo, desde a eficiência operacional até a segurança pública. Mas quase nada disso é analisado de forma significativa. Isso ocorre porque vasculhar esses dados de vídeo não estruturados consome muito tempo e é extremamente caro.
Imagine ser capaz de simplesmente aplicar consultas em linguagem natural ao conteúdo de vídeo em escala para não apenas encontrar conteúdo específico, mas também analisá-lo, avaliá-lo e aprender com ele.
A Databricks pode apoiar exatamente isso. A abordagem? Tratar o vídeo como um problema de engenharia de dados.
A abordagem tradicional para a análise de vídeo é direcionar cada vez mais analistas humanos para o problema. Os avanços em deep learning, visão computacional e, mais recentemente, em modelos de linguagem de visão (VLMs) tornaram possível para os computadores identificar objetos em vídeos com alta precisão. No entanto, dimensionar a inferência e orquestrar pipelines com enormes quantidades de dados não estruturados tornou a logística de construção desses pipelines difícil para as organizações. Isso é especialmente verdadeiro para a aplicação de VLMs ao problema. Os VLMs oferecem flexibilidade no fornecimento de prompts, não exigindo que o modelo seja pré-treinado ou passe por fine-tuning em classes específicas antes do uso, mas são maiores e mais lentos do que os modelos tradicionais de detecção de objetos, apresentando desafios de escalabilidade.
No Databricks, você pode se concentrar em como a análise de vídeo usando esses modelos se integra aos pipelines de dados, em vez de se preocupar com as complexidades da inferência de modelos e da infraestrutura.
Essa abordagem pode ser demonstrada em um aplicativo Databricks implantado diretamente em um workspace da Databricks. O usuário faz o upload de um vídeo ou aponta para um que já esteja armazenado em um Databricks Volume, insere diretamente um prompt em linguagem natural descrevendo o que está procurando — por exemplo, caminhões baú brancos, seguranças, painéis solares — e inicia o pipeline de processamento com um único clique
A partir daí, o Databricks Serverless GPU Compute (SGC) assume o controle. Um job do Lakeflow é acionado, o qual obtém GPUs pré-aquecidas e inicia imediatamente o processamento do vídeo por meio do modelo de segmentação SAM3 da Meta em poucos segundos. O modelo identifica objetos de interesse que correspondem ao prompt em cada quadro do vídeo. O vídeo é truncado apenas para esses momentos e gravado novamente em outro Databricks Volume. Por exemplo, um vídeo de 26 minutos de uma câmera de trânsito foi reduzido para um minuto e 55 segundos de filmagem relevante, com os carimbos de data/hora originais preservados para que os revisores possam voltar à fonte, se necessário. Cada clipe truncado é então enviado a um modelo de fundação por meio da Databricks Foundation Model API (FMAPI) para geração de resumos por AI, fornecendo dados textuais que podem ser gravados em uma tabela ou direcionados para processos downstream adicionais.
Como todo esse processo é tratado como um problema de engenharia de dados, o pipeline é explicitamente agnóstico em relação ao modelo, aproveitando o MLflow para permitir que os usuários escolham o modelo de sua preferência ou até mesmo tragam modelos novos ou que passaram por fine-tuning para o fluxo de trabalho. As assinaturas de modelo do MLflow padronizam as entradas e saídas do modelo para garantir continuidade e flexibilidade. Qualquer modelo que você baixar do Huggingface ou treinar do zero pode ser aproveitado nesse pipeline. O SAM3 pode ser substituído por modelos YOLO, outros modelos de visão baseados em transformers ou modelos específicos de domínio que passaram por fine-tuning.”
Essa flexibilidade também se estende à camada de sumarização e detecção de anomalias. Qualquer modelo de fundação multimodal ou modelos menores de geração de legendas de imagens podem ser usados para converter o conteúdo dos quadros em descrições de texto. Ter essas descrições de texto pode alimentar fluxos de trabalho de AI baseados em texto para resumir o vídeo para revisão de analistas ou identificar conteúdo inesperado e sinalizar segmentos de vídeo para revisão. Tornar os modelos intercambiáveis sem quebrar o pipeline torna este exemplo extensível a quase qualquer caso de uso de processamento de vídeo.
Como a computação de GPU sem servidor (serverless GPU compute) é pré-configurada para funcionar com GPUs NVIDIA populares e frameworks de deep learning, é apenas uma questão de escrever seu código de engenharia de dados. Você não precisa se preocupar com a capacidade de computação da GPU ou com a compatibilidade de versão dos pacotes Python com o CUDA.
O fluxo de trabalho acionado por aplicativo é apenas uma maneira de interagir com o pipeline. O mesmo pipeline pode ser executado como um processo orientado a arquivos ou eventos: o vídeo chega a um Databricks Volume e aciona automaticamente o job do LakeFlow para produzir a saída truncada e a análise baseada em texto sem qualquer intervenção humana. Downstream, esse texto pode acionar alertas, ser direcionado para revisores ou alimentar processamentos adicionais de AI.
A concorrência é gerenciada por meio de uma configuração simples. Você pode carregar 20 vídeos de uma vez e isso iniciará 20 versões do mesmo job em execução simultânea. Cada job obtém sua própria computação de GPU sem servidor de forma independente, escalando horizontalmente conforme necessário, e libera os recursos quando concluído. Sem necessidade de gerenciamento de cluster e sem pagar por GPUs quando não estiverem em uso.
Este aplicativo e pipeline são um ponto de partida. Após a implantação em qualquer workspace da Databricks, a arquitetura subjacente oferece suporte a qualquer cenário em que grandes volumes de vídeo precisem ser processados, pesquisados ou resumidos. Isso inclui inspeção de infraestrutura, segurança física, segurança pública, operações aeroportuárias e muito mais. O repositório do GitHub que contém o código do aplicativo e do pipeline está disponível publicamente para equipes que desejam implantá-lo, estendê-lo ou adaptá-lo aos seus próprios casos de uso.
Veja como sua agência pode processar, resumir e pesquisar volumes massivos de vídeo sem fluxos de trabalho complexos de ML. Explore a Databricks para o Setor Público e entre em contato com nossa equipe do setor público.
(Esta publicação no blog foi traduzida utilizando ferramentas baseadas em inteligência artificial) Publicação original
Assine nosso blog e receba os posts mais recentes diretamente na sua caixa de entrada.