von Justin Monaldo, Kacey Hertan und Yvan Aquino
Ein Versorgungsunternehmen setzt Drohnen ein, um Hunderte von Kilometern an Stromleitungen zu inspizieren. Eine Polizeidienststelle wertet stundenlanges Bildmaterial von Verkehrskameras aus, um eine Fahrerflucht zu untersuchen. Ein Stadtplanungsteam nutzt Kameraaufnahmen, um den Fußgänger- und Verkehrsfluss zu analysieren.
Jeden Tag werden Terabytes an Videodaten generiert, die wertvolle Erkenntnisse über alles Mögliche liefern können – von der betrieblichen Effizienz bis hin zur öffentlichen Sicherheit. Doch fast nichts davon wird in sinnvoller Weise analysiert. Das liegt daran, dass das Durchsuchen dieser unstrukturierten Videodaten enorm zeitaufwendig und teuer ist.
Stellen Sie sich vor, Sie könnten Suchanfragen in natürlicher Sprache ganz einfach auf Videoinhalte im großen Stil anwenden, um bestimmte Inhalte nicht nur zu finden, sondern sie auch zu analysieren, zu bewerten und daraus zu lernen.
Databricks kann genau das unterstützen. Der Ansatz? Betrachten Sie Video als ein Data-Engineering-Problem.
Der traditionelle Ansatz zur Videoanalyse besteht darin, immer mehr menschliche Analysten für das Problem einzusetzen. Fortschritte im Deep Learning, in der Computer Vision und in jüngster Zeit bei Vision Language Models (VLMs) haben es Computern ermöglicht, Objekte in Videos mit hoher Genauigkeit zu identifizieren. Doch die Skalierung der Inferenz und die Orchestrierung von Pipelines mit riesigen Mengen unstrukturierter Daten machen die Logistik beim Aufbau dieser Pipelines für Unternehmen schwierig. Dies gilt insbesondere für den Einsatz von VLMs für dieses Problem. VLMs bieten Flexibilität beim Prompting, da das Modell vor der Verwendung nicht auf bestimmte Klassen vortrainiert oder feinabgestimmt werden muss. Sie sind jedoch größer und langsamer als herkömmliche Objekterkennungsmodelle, was Herausforderungen bei der Skalierung mit sich bringt.
In Databricks können Sie sich darauf konzentrieren, wie sich die Videoanalyse mit diesen Modellen in Datenpipelines einfügt, anstatt sich mit der Komplexität von Modellinferenz und Infrastruktur auseinanderzusetzen.
Dieser Ansatz lässt sich in einer Databricks-App demonstrieren, die direkt in einem Databricks-Workspace bereitgestellt wird. Ein Benutzer lädt ein Video hoch oder verweist auf ein bereits in einem Databricks Volume gespeichertes Video, gibt direkt einen Prompt in natürlicher Sprache ein, der beschreibt, wonach er sucht – z. B. weiße Kastenwagen, Sicherheitskräfte, Solarmodule – und startet die Verarbeitungspipeline mit einem einzigen Klick.
Von dort aus übernimmt Databricks Serverless GPU Compute (SGC). Ein Lakeflow-Job wird ausgelöst, der sich vorgewärmte GPUs schnappt und sofort innerhalb von Sekunden mit der Verarbeitung des Videos durch das SAM3-Segmentierungsmodell von Meta beginnt. Das Modell identifiziert in jedem Frame des Videos die relevanten Objekte, die dem Prompt entsprechen. Das Video wird auf genau diese Momente gekürzt und in ein anderes Databricks Volume zurückgeschrieben. Beispielsweise wurde ein 26-minütiges Video einer Verkehrskamera auf eine Minute und 55 Sekunden relevantes Bildmaterial reduziert, wobei die ursprünglichen Zeitstempel beibehalten wurden, sodass Prüfer bei Bedarf zur Quelle zurückspringen können. Jeder gekürzte Clip wird dann über die Databricks Foundation Model API (FMAPI) an ein Foundation Model für eine KI-generierte Zusammenfassung übergeben. Dies liefert Textdaten, die in eine Tabelle geschrieben oder an nachgelagerte Prozesse weitergeleitet werden können.
Da dieser gesamte Prozess als Data-Engineering-Problem behandelt wird, ist die Pipeline explizit modellagnostisch. Sie nutzt MLflow, um Benutzern die Wahl ihres bevorzugten Modells zu ermöglichen oder sogar neue oder feinabgestimmte Modelle in den Workflow zu integrieren. MLflow-Modellsignaturen standardisieren die Modelleingaben und -ausgaben, um Kontinuität und Flexibilität zu gewährleisten. Jedes Modell, das Sie von Hugging Face herunterladen oder von Grund auf neu trainieren, kann in dieser Pipeline genutzt werden. SAM3 kann durch YOLO-Modelle, andere Transformer-basierte Vision-Modelle oder feinabgestimmte, domänenspezifische Modelle ersetzt werden.
Diese Flexibilität erstreckt sich auch auf die Ebene der Zusammenfassung und Anomalieerkennung. Jedes multimodale Foundation-Modell oder kleinere Image-Captioning-Modelle können verwendet werden, um die Frame-Inhalte in Textbeschreibungen umzuwandeln. Diese Textbeschreibungen können textbasierte KI-Workflows speisen, um Videos für die Überprüfung durch Analysten zusammenzufassen oder unerwartete Inhalte zu identifizieren und Videosegmente zur Überprüfung zu markieren. Da die Modelle austauschbar sind, ohne die Pipeline zu unterbrechen, lässt sich dieses Beispiel auf fast jeden Anwendungsfall der Videoverarbeitung übertragen.
Da Serverless GPU Compute für die Verwendung mit gängigen NVIDIA-GPUs und Deep-Learning-Frameworks vorkonfiguriert ist, müssen Sie lediglich Ihren Data-Engineering-Code schreiben. Sie müssen sich keine Gedanken über GPU-Rechenkapazität oder die Kompatibilität von Python-Paketversionen mit CUDA machen.
Der durch die App ausgelöste Workflow ist nur eine Möglichkeit, mit der Pipeline zu interagieren. Dieselbe Pipeline kann als datei- oder ereignisgesteuerter Prozess ausgeführt werden: Ein Video landet in einem Databricks Volume, was automatisch den LakeFlow-Job auslöst, um ohne menschliches Zutun das gekürzte Video und die textbasierte Analyse zu erstellen. Nachgelagert kann dieser Text dann Warnmeldungen auslösen, an Prüfer weitergeleitet oder in eine zusätzliche KI-Verarbeitung eingespeist werden.
Die Parallelität wird über eine einfache Konfiguration gesteuert. Sie können 20 Videos auf einmal einspielen, und es werden 20 Versionen desselben Jobs gleichzeitig gestartet. Jeder Job greift unabhängig auf seine eigene Serverless-GPU-Rechenleistung zu, skaliert bei Bedarf horizontal und gibt die Ressourcen nach Abschluss wieder frei. Keine Clusterverwaltung erforderlich und keine Kosten für GPUs, wenn diese nicht genutzt werden.
Diese App und Pipeline sind erst der Anfang. Nach der Bereitstellung in einem beliebigen Databricks-Workspace unterstützt die zugrunde liegende Architektur jedes Szenario, in dem große Mengen an Videomaterial verarbeitet, durchsucht oder zusammengefasst werden müssen. Dazu gehören die Inspektion von Infrastrukturen, physische Sicherheit, öffentliche Sicherheit, der Flughafenbetrieb und mehr. Das GitHub-Repository mit dem App- und Pipeline-Code ist öffentlich zugänglich für Teams, die ihn bereitstellen, erweitern oder an ihre eigenen Anwendungsfälle anpassen möchten.
Erfahren Sie, wie Ihre Behörde riesige Mengen an Videomaterial ohne komplexe ML-Workflows verarbeiten, zusammenfassen und durchsuchen kann. Entdecken Sie Databricks für den öffentlichen Sektor und kontaktieren Sie unser Team für den öffentlichen Sektor.
(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag
Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.