Passa al contenuto principale
Soluzioni

Come Databricks trasforma i video in informazioni ricercabili e fruibili

di Justin Monaldo, Kacey Hertan e Yvan Aquino

  • In che modo le agenzie del settore pubblico possono trasformare i video grezzi provenienti da droni e telecamere in informazioni ricercabili e pronte per l'AI
  • In che modo Databricks utilizza i VLM, le GPU serverless e le pipeline Lakeflow per rilevare, troncare e riassumere automaticamente i momenti chiave dei video
  • In che modo l'architettura scalabile e indipendente dal modello consente l'analisi video in tempo reale per la sicurezza pubblica, le infrastrutture e le operazioni urbane

Un'azienda di servizi pubblici distribuisce droni per ispezionare centinaia di chilometri di linee elettriche. Un dipartimento di polizia estrae ore di riprese delle telecamere del traffico per indagare su un incidente con omissione di soccorso. Un team di pianificazione urbana sfrutta le riprese video per analizzare il flusso di pedoni e traffico.

Ogni giorno vengono generati terabyte di dati video in grado di fornire informazioni preziose su qualsiasi aspetto, dall'efficienza operativa alla sicurezza pubblica. Ma quasi nessuno di questi dati viene analizzato in modo significativo. Questo perché esaminare questi dati video non strutturati richiede un'enorme quantità di tempo ed è estremamente costoso.

Immagina di poter semplicemente applicare query in linguaggio naturale ai contenuti video su scala, non solo per trovare contenuti specifici, ma per analizzarli, valutarli e trarne insegnamento.

Databricks può supportare esattamente questo. L'approccio? Trattare i video come un problema di data engineering.

In che modo Databricks ha cambiato l'approccio all'analisi video?

L'approccio tradizionale all'analisi video consiste nell'impiegare sempre più analisti umani per risolvere il problema. I progressi nel deep learning, nella computer vision e, più recentemente, nei vision language models (VLM) hanno reso possibile per i computer identificare oggetti nei video con un'elevata precisione. Tuttavia, la scalabilità dell'inferenza e l'orchestrazione di pipeline con enormi quantità di dati non strutturati hanno reso complessa la logistica di creazione di queste pipeline per le organizzazioni. Questo è particolarmente vero per l'applicazione dei VLM al problema. I VLM offcono flessibilità nel prompting, non richiedendo che il modello sia pre-addestrato o sottoposto a fine-tuning su classi specifiche prima dell'uso, ma sono più grandi e lenti rispetto ai tradizionali modelli di object detection, presentando sfide di scalabilità.

In Databricks, puoi concentrarti su come l'analisi video che utilizza questi modelli si inserisce nelle pipeline di dati, anziché sulle complessità dell'inferenza dei modelli e dell'infrastruttura.

image2.gif
Gli utenti possono cercare istantaneamente tra le riprese video utilizzando i VLM e il linguaggio naturale.

In che modo Databricks elabora e analizza i video su scala?

Questo approccio può essere dimostrato in un'app Databricks distribuita direttamente in un'area di lavoro Databricks. Un utente carica un video o ne indica uno già memorizzato in un Databricks Volume, inserisce direttamente un prompt in linguaggio naturale che descrive ciò che sta cercando (ad esempio, camion furgonati bianchi, guardie di sicurezza, pannelli solari) e avvia la pipeline di elaborazione con un solo clic

Da quel momento, entra in gioco Databricks Serverless GPU Compute (SGC). Viene attivato un job Lakeflow, che recupera GPU pre-riscaldate e avvia immediatamente l'elaborazione del video tramite il modello di segmentazione SAM3 di Meta in pochi secondi. Il modello identifica gli oggetti di interesse corrispondenti al prompt in ogni fotogramma del video. Il video viene troncato solo a quei momenti e riscritto in un altro Databricks Volume. Ad esempio, un video di 26 minuti di una telecamera del traffico è stato ridotto a un minuto e 55 secondi di riprese pertinenti, conservando i timestamp originali in modo che i revisori possano tornare alla sorgente se necessario. Ogni clip troncata viene quindi passata a un modello di base tramite la Databricks Foundation Model API (FMAPI) per la generazione di un riepilogo tramite AI, fornendo dati testuali che possono essere scritti in una tabella o inviati ad altri processi a valle.

Poiché l'intero processo è trattato come un problema di data engineering, la pipeline è esplicitamente indipendente dal modello, sfruttando MLflow per consentire agli utenti di scegliere il modello che preferiscono o persino di importare modelli nuovi o sottoposti a fine-tuning nel workflow. Le firme dei modelli di MLflow standardizzano gli input e gli output del modello per garantire continuità e flessibilità. Qualsiasi modello scaricato da Huggingface o addestrato da zero può essere sfruttato in questa pipeline. SAM3 può essere sostituito con modelli YOLO, altri modelli di visione basati su transformer o modelli specifici per il dominio sottoposti a fine-tuning.

Questa flessibilità si estende anche al livello di riepilogo e di rilevamento delle anomalie. Qualsiasi modello di base multimodale o modelli di image captioning più piccoli possono essere utilizzati per convertire i contenuti dei fotogrammi in descrizioni testuali. La disponibilità di queste descrizioni testuali può alimentare workflow di AI basati su testo per riassumere i video per la revisione degli analisti, o identificare contenuti imprevisti e contrassegnare i segmenti video per la revisione. Rendere i modelli intercambiabili senza interrompere la pipeline rende questo esempio estensibile a quasi tutti i casi d'uso di elaborazione video.

Poiché il calcolo GPU serverless è preconfigurato per funzionare con le diffuse GPU NVIDIA e i framework di deep learning, si tratta solo di scrivere il codice di data engineering. Non devi preoccuparti della capacità di calcolo delle GPU o della compatibilità delle versioni dei pacchetti Python con CUDA.

In che modo la pipeline gestisce i video su scala?

Il workflow attivato dall'app è solo uno dei modi per interagire con la pipeline. La stessa pipeline può essere eseguita come processo guidato da file o da eventi: il video arriva in un Databricks Volume, attivando automaticamente il job Lakeflow per produrre l'output troncato e l'analisi basata su testo senza alcun intervento umano. A valle, quel testo può quindi attivare avvisi, essere indirizzato ai revisori o alimentare ulteriori elaborazioni di AI.

image3.gif
Databricks genera un video troncato e un riepilogo basato sull'AI, mostrando solo i momenti più rilevanti per una revisione rapida o automatizzata.

La concorrenza viene gestita tramite una semplice configurazione. Puoi caricare 20 video contemporaneamente e verranno avviate 20 versioni dello stesso job in esecuzione nello stesso momento. Ciascun job acquisisce in modo indipendente il proprio calcolo GPU serverless, scalando orizzontalmente in base alle esigenze e rilasciando le risorse al termine. Non è richiesta alcuna gestione dei cluster e non si pagano le GPU quando non sono in uso.

Dove può essere applicata la video intelligence?

Questa app e questa pipeline sono un punto di partenza. Dopo la distribuzione in qualsiasi area di lavoro Databricks, l'architettura sottostante supporta qualsiasi scenario in cui sia necessario elaborare, cercare o riassumere grandi volumi di video. Ciò include l'ispezione delle infrastrutture, la sicurezza fisica, la sicurezza pubblica, le operazioni aeroportuali e altro ancora. Il repository GitHub contenente il codice dell'app e della pipeline è disponibile pubblicamente per i team che desiderano distribuirlo, estenderlo o adattarlo ai propri casi d'uso.

image1.png
Databricks orchestra una pipeline di video intelligence end-to-end che acquisisce, elabora e analizza i video su scala per fornire informazioni ricercabili in pochi minuti.

Crea oggi stesso la tua pipeline di video intelligence su Databricks

Scopri come la tua agenzia può elaborare, riassumere e cercare enormi volumi di video senza complessi workflow di ML. Esplora Databricks per il settore pubblico e contatta il nostro team dedicato al settore pubblico.

(Questo post sul blog è stato tradotto utilizzando strumenti basati sull'intelligenza artificiale) Post originale

Ricevi gli ultimi articoli nella tua casella di posta

Iscriviti al nostro blog e ricevi gli ultimi articoli direttamente nella tua casella di posta.