In diesem Artikel wird eine Architektur beschrieben, die Sie verwenden können, um die manuelle Analyse von Videomaterial durch einen automatisierten (und häufig genaueren) Machine Learning-Prozess zu ersetzen.
Aufbau
Laden Sie eine PowerPoint-Datei dieser Architektur herunter.Die Logos FFmpeg und Jupyter Notebook sind Marken ihrer jeweiligen Unternehmen. Es wird keine Bestätigung durch die Verwendung dieser Marken impliziert.
Workflow
- Eine Sammlung von Videomaterial im MP4-Format wird in Azure Blob Storage hochgeladen. Im Idealfall werden die Videos in einem Container mit Rohdaten platziert.
- Eine vorkonfigurierte Pipeline in Azure Machine Learning erkennt, dass Videodateien in den Container hochgeladen werden, und initiiert einen Rückschlusscluster, um damit zu beginnen, das Videomaterial in Frames zu unterteilen.
- Das Open-Source-Tool FFmpeg spaltet das Video auf und extrahiert Frames. Sie können die Anzahl der zu extrahierenden Frames pro Sekunde sowie die Qualität der Extraktion und das Format der Bilddatei konfigurieren. Das Format kann JPG oder PNG sein.
- Der Rückschlusscluster sendet die Bilder an Azure Data Lake Storage.
- Eine vorkonfigurierte Logik-App, die Data Lake Storage überwacht, erkennt, dass neue Bilder hochgeladen werden. Daraufhin startet sie einen Workflow.
- Die Logik-App ruft ein vorab trainiertes Custom Vision-Modell auf, um Objekte, Features oder Qualitäten in den Bildern zu identifizieren. Alternativ oder zusätzlich wird ein Modell für maschinelles Sehen (optische Zeichenerkennung, OCR) aufgerufen, um Textinformationen in den Bildern zu identifizieren.
- Die Ergebnisse werden im JSON-Format empfangen. Die Logik-App analysiert die Ergebnisse und erstellt Schlüssel-Wert-Paare. Sie können die Ergebnisse in dedizierten Azure SQL-Pools speichern, die von Azure Synapse Analytics bereitgestellt werden.
- Power BI bietet Datenvisualisierung.
Komponenten
Azure Blob Storage bietet Objektspeicher für cloudnative Workloads und Machine Learning-Speicher. In dieser Architektur werden damit die hochgeladenen Videodateien gespeichert.
Azure Machine Learning ist ein professioneller Machine Learning-Dienst für den End-to-End-ML-Lebenszyklus.
Azure Data Lake Storage bietet hochgradig skalierbaren und kostengünstigen Cloudspeicher mit erhöhter Sicherheit für Hochleistungs-Analyseworkloads.
Maschinelles Sehen ist Teil von Azure KI Services. Es wird verwendet, um Informationen zu den einzelnen Bildern abzurufen.
Mit Custom Vision können Sie hochmoderne Bildanalysen mit maschinellem Sehen für Ihre spezifischen Domänen anpassen und einbetten.
Azure Logic Apps vernetzt Apps und Daten umgebungsübergreifend und automatisiert auf diese Weise Workflows. Der Dienst ermöglicht Datenzugriff und -verarbeitung in Echtzeit.
Power BI ist eine Sammlung von Softwarediensten, Apps und Connectors, die zusammenarbeiten, um Ihre Daten zu visualisieren.
Alternativen
Wenn kein vordefiniertes benutzerdefiniertes Objekterkennungsmodell aufgerufen werden muss, können wir die folgende Architektur verwenden, die auf Azure AI Vision Video Retrieval basiert. Wenn Sie diesen Dienst verwenden, wird die Analyse von Videos in Frames und die Verwendung von benutzerdefiniertem Code zum Analysieren des Aufnahmeprozesses weggelassen. Dieser Ansatz dient einem einfacheren Pfad, wenn Ihr Anwendungsfall auf der Erkennung gängiger Objekte oder Entitäten in einem Video basiert.
Laden Sie eine PowerPoint-Datei zu dieser Architektur herunter.
Alternativer Workflow
- Eine Sammlung von Videomaterial im MP4-Format wird in Azure Blob Storage hochgeladen.
- Eine vorkonfigurierte Logik-App überwacht Blob Storage, dass neue Videos hochgeladen und ein Workflow gestartet wird.
- Die Logik-App ruft die Azure AI Vision Video Retrieval-API auf, um einen Index zu erstellen.
- Die Logik-App ruft die Azure AI Vision Video-Abruf-API auf, um dem Index Videodokumente hinzuzufügen.
- Eine vorkonfigurierte Logik-App überwacht die Aufnahme, um zu überprüfen, wann die Indizierung abgeschlossen ist.
- Die Logik-App ruft die Videoempfangs-API auf, um mit natürlicher Sprache zu suchen, Objekte, Features oder Qualitäten in den Bildern zu identifizieren.
- Die Ergebnisse werden im JSON-Format empfangen. Die Logik-App analysiert die Ergebnisse und erstellt Schlüssel-Wert-Paare. Sie können die Ergebnisse in SQL-Datenbank in Fabric speichern.
- Power BI bietet Datenvisualisierung.
Alternative Komponenten
- Microsoft Fabric ist eine end-to-End Unified Analytics-Plattform, um die Datenintegration zu optimieren. Es wurde entwickelt, um den Prozess der Verwaltung und Analyse von Daten über verschiedene Domänen hinweg zu vereinfachen, indem eine umfassende Suite von Tools und Diensten auf einer einzigen Plattform bereitgestellt wird. Sie wird in dieser Architektur als Datenaufnahmeplattform verwendet, um die JSON-Objekte abzurufen und an die SQL-Datenbank in Fabric zu übergeben.
- SQL-Datenbank in Fabric ist ein einfacher, autonomer und sicherer SQL-Datenbankdienst, der für KI optimiert ist. Sie wird in dieser Architektur verwendet, um Informationen zu den Videos zu speichern, die aus der Azure Video-Abruf-API abgerufen wurden.
- Azure AI Vision ist ein Dienst, der erweiterte Bild- und Videoanalysefunktionen bereitstellt, ohne dass maschinelles Lernen erforderlich ist. Die Videoabruf-API wird in dieser Architektur verwendet, um Informationen direkt aus dem Video abzurufen.
Szenariodetails
In vielen Branchen wird Videomaterial aufgezeichnet, um das Vorhandensein oder Fehlen eines bestimmten Objekts oder einer bestimmten Entität zu erkennen oder um Objekte oder Entitäten zu klassifizieren. Videoüberwachung und -analysen werden traditionell manuell durchgeführt. Diese Prozesse sind häufig monoton und fehleranfällig – insbesondere bei Aufgaben, die für das menschliche Auge schwierig sind. Diese Prozesse können mithilfe von KI und maschinellem Lernen automatisiert werden.
Eine Videoaufzeichnung kann in einzelne Frames unterteilt werden, damit verschiedene Technologien die Bilder analysieren können. Eine solche Technologie ist maschinelles Sehen – also die Fähigkeit eines Computers, Objekte und Entitäten auf einem Bild zu identifizieren.
Mit maschinellem Sehen wird die Überwachung von Videomaterial automatisiert, standardisiert und potenziell genauer. Ein Modell für maschinelles Sehen kann trainiert werden, und je nach Anwendungsfall erhalten Sie oftmals Ergebnisse, die mindestens so gut sind wie die der Person, die das Modell trainiert hat. Durch die Verwendung von Machine Learning Operations (MLOps) zur kontinuierlichen Verbesserung des Modells können Sie im Laufe der Zeit bessere Ergebnisse erzielen und auf Veränderungen in den Videodaten reagieren.
Mögliche Anwendungsfälle
Dieses Szenario ist für alle Unternehmen relevant, die Videos analysieren. Hier finden Sie einige mögliche Anwendungsfälle:
Landwirtschaft: Überwachen und Analysieren von Nutzpflanzen und Bodenbedingungen im Laufe der Zeit. Mithilfe von Drohnen oder unbemannten Fluggeräten können Landwirte Videomaterial für die Analyse aufzeichnen.
Umweltwissenschaften: Analysieren von Wasserlebewesen, um zu verstehen, wo sie sich befinden und wie sie sich entwickeln. Umweltforscher können Boote mit Unterwasserkameras ausstatten und Videoaufnahmen entlang der Küste machen. Anschließend können sie das Videomaterial analysieren, um Migrationsbewegungen nachzuvollziehen und zu untersuchen, wie sich Populationen im Laufe der Zeit verändern.
Verkehrssteuerung: Klassifizieren von Fahrzeugen in Kategorien (SUV, Pkw, Lkw, Motorrad) und Planen der Verkehrssteuerung auf der Grundlage dieser Informationen. Videomaterial kann von Überwachungskameras an öffentlichen Orten bereitgestellt werden. Die meisten Überwachungskameras erfassen Datum und Uhrzeit, was sich ganz einfach mittels optischer Zeichenerkennung (Optical Character Recognition, OCR) abrufen lässt.
Qualitätssicherung: Überwachen und Analysieren der Qualität in einer Produktionsstätte. Durch die Installation von Kameras an der Produktionslinie können Sie ein Modell für maschinelles Sehen trainieren, um Anomalien zu erkennen.
Überlegungen
Diese Überlegungen setzen die Säulen des Azure Well-Architected Framework um, das aus einer Reihe von Leitprinzipien besteht, die zur Verbesserung der Qualität einer Workload verwendet werden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.
Zuverlässigkeit
Zuverlässigkeit stellt sicher, dass Ihre Anwendung Ihre Verpflichtungen gegenüber den Kunden erfüllen kann. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Zuverlässigkeit.
Eine zuverlässige Workload muss robust und verfügbar sein. Resilienz ist die Fähigkeit des Systems, nach Systemausfällen eine Wiederherstellung auszuführen und die Funktionsfähigkeit sicherzustellen. Das Ziel der Resilienz besteht darin, nach einem Ausfall wieder die volle Funktionsfähigkeit einer Anwendung herzustellen. Verfügbarkeit ist ein Maßstab dafür, ob Ihre Benutzer bei Bedarf jederzeit auf Ihre Workload Zugriff haben.
Informationen zu den Verfügbarkeitsgarantien der Azure-Dienste in dieser Lösung finden Sie in den folgenden Ressourcen:
- Vereinbarung zum Servicelevel (SLA) für Speicherkonten
- SLA für Azure Machine Learning
- SLA für Azure KI Services
- SLA für Logic Apps
- SLA für Azure Synapse Analytics
- SLA für Power BI
Sicherheit
Sicherheit bietet Schutz vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Sicherheit.
Sehen Sie sich bei Bedarf folgende Ressourcen an:
- Identitätsverwaltung
- Schützen Ihrer Infrastruktur
- Anwendungssicherheit
- Datensouveränität und -verschlüsselung
- Sicherheitsressourcen
Kostenoptimierung
Bei der Kostenoptimierung geht es darum, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Kostenoptimierung.
Hier finden Sie einige Richtlinien für die Kostenoptimierung:
- Nutzen Sie für Ihre Architektur die Strategie mit nutzungsbasierter Bezahlung, und skalieren Sie nach Bedarf auf, anstatt bereits zu Beginn in umfangreiche Ressourcen zu investieren.
- Berücksichtigen Sie Opportunitätskosten Ihrer Architektur, und wägen Sie die Vor- und Nachteile ab, die eine Position als Vorreiter oder Nachahmer mit sich bringt. Nutzen Sie den Preisrechner, um die Vor- und Betriebskosten zu schätzen.
- Richten Sie Richtlinien, Budgets und Kontrollen ein, um die Kosten für Ihre Lösung zu begrenzen.
Optimaler Betrieb
„Optimaler Betrieb“ deckt die Betriebsprozesse ab, die für die Bereitstellung einer Anwendung und deren Ausführung in der Produktion sorgen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung des optimalen Betriebs.
Bereitstellungen müssen zuverlässig und planbar sein. Hier finden Sie einige Richtlinien:
- Automatisieren Sie Bereitstellungen, um die Wahrscheinlichkeit menschlicher Fehler zu reduzieren.
- Implementieren Sie einen schnellen, routinemäßigen Bereitstellungsprozess, um Verzögerungen bei der Veröffentlichung neuer Features und Fehlerbehebungen zu vermeiden.
- Führen Sie schnell ein Rollback oder Rollforward aus, wenn ein Update zu Problemen führt.
Effiziente Leistung
Die Leistungseffizienz ist die Fähigkeit Ihrer Workload, auf effiziente Weise eine den Anforderungen der Benutzer entsprechende Skalierung auszuführen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Leistungseffizienz.
Eine angemessene Nutzung der Skalierung und die Implementierung von PaaS-Angeboten mit integrierter Skalierung sind die wichtigsten Methoden, um Leistungseffizienz zu erreichen.
Beitragende
Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:
Hauptautor:
- Oscar Shimabukuro Kiyan | Senior Cloud Solutions Architect (Daten und KI)
- Han Wang | Cloud Solutions Architect – Daten & KI
Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.
Nächste Schritte
- Einführung in Azure Storage
- Was ist Azure Machine Learning?
- Was sind Azure AI Services?
- Übersicht: Was ist Azure Logic Apps?
- Was ist Azure Synapse Analytics?
- Was ist Power BI Embedded Analytics?
- Anzeigen der Automatisierungslösung für Geschäftsprozesse auf GitHub