Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel bietet einen Überblick über Azure KI Video Indexer Bring Your Own KI-Modell.
Einführung
Sie können Erkenntnisse aus anderen Quellen, einschließlich Drittanbieter-, Klassifizierungs- und Erkennungsmodellen, kombinieren, um eine detaillierte Analyse Ihrer Mediendaten zu erstellen. Sie können eines oder mehrere von Microsoft angebotene Modelle, ein externes benutzerdefiniertes Modell oder ein angepasstes Person-, Marken-, Sprach- oder Sprachmodell verwenden, das von Azure Video Indexer angeboten wird.
Das Feature ist auch für VI verfügbar, das von Arc aktiviert ist.
Hinweis
HAFTUNGSAUSSCHLUSS: Der Verhaltenskodex von Microsoft für Azure OpenAI-Dienst gilt für Ihre Verwendung des Features "Eigenes Modell bringen", das das Recht von Microsoft umfasst, Ihren Zugriff und die Nutzung dieses Features für Nichtkompatibilität einzustellen.
Preise
Mit dem VideoIndexer BYO-Modell können Sie benutzerdefinierte Einblicke zu Video-Insight-Objekten hinzufügen, ohne dass zusätzliche Kosten entstehen, die über die aufgeführten Kosten des Indizierungsprozesses hinausgehen. Alle Kosten im Zusammenhang mit der externen Umgebung und dem Modell sollten jedoch nicht als Teil des Abrechnungspreises von Video Indexer betrachtet werden. Es wird dringend empfohlen, unseren Abschnitt "Best Practices" zu überprüfen, um die externe Logik zu optimieren und Kosten zu senken.
Allgemeiner Workflow
- Video wird hochgeladen und mit Azure AI Video Indexer indiziert.
- Nach Abschluss des Indizierungsprozesses wird ein Ereignis erstellt.
- Ihr benutzerdefinierter Code lauscht auf das Ereignis und startet den Video-Nachbearbeitungsprozess.
Voraussetzungen
Bevor Sie mit der Verwendung des BYO-Modellfeatures mit azure AI Video Indexer beginnen können, müssen Sie:
- Trainieren oder setzen Sie ein externes KI-Modell ein, das Videoressourcen verarbeitet und eine Analyse liefert.
- Erstellen Sie benutzerdefinierten Code, der:
- Lauscht auf Event Hubs-Ereignisse.
- Extrahiert
video id
aus den Ereignissen. - Ruft die relevanten Ressourcen durch Aufrufen von VI-APIs ab. Fordern Sie in diesem Szenario "Videoindex abrufen" und "Frames-SAS-URLs abrufen" an.
- Sendet die Ressourcen an das externe KI-Modell.
- Erstellt ein JSON-Objekt basierend auf den Erkenntnissen, die aus dem benutzerdefinierten KI-Modell abgerufen wurden.
- Fordert Patch Update Video Index an.
Schema
Die Werte zum Auffüllen der benutzerdefinierten Daten sind wie folgt:
Name | Beschreibung | Erforderlich |
---|---|---|
Name | Name des externen KI-Modells | Wahr |
Anzeigename | Insight-Gruppenname, der im Videoindexer angezeigt werden soll | Wahr |
AnzeigeTyp | Definiert den Typ der UI-Darstellung für diese bestimmte Einblicksgruppe.
Standardwert: Kapseln Mögliche Typen: Kapsel – Nur Text mit einer Ebene CapsuleAndTags - Nur Text auf zwei Ebenen, in Zukunft werden weitere hinzugefügt. |
Falsch |
Ergebnisse | Array von Objekten, die die vom externen KI-Modell erkannten Erkenntnisse darstellen | Wahr |
results.id | Die vom Benutzer bereitgestellte ID des Ergebnisobjekts sollte innerhalb des Ergebnisbereichs eindeutig sein. | Wahr |
results.type | Dieses Feld stellt den Typ des Einblicks dar, der vom externen KI-Modell kategorisiert wurde. Es wird verwendet, um eine allgemeine Erkenntniskategorie darzustellen, was bedeutet, dass mehrere Einblicke dieses Typs in einem bestimmten Frame identifiziert werden können. Beispiele für Einblicktypen sind: basketball , crowd clapping , white shirt . |
Wahr |
results.subType | Dieses Feld stellt den Typ des Einblicks dar, der vom externen KI-Modell kategorisiert wurde. Es wird verwendet, um eine bestimmte Erkenntniskategorie darzustellen, was bedeutet, dass nur ein einzelner Einblick dieses Typs in einem bestimmten Frame identifiziert werden konnte. Beispiele für Einblicktypen sind: basketball #23 , John clapping , Dana’s white shirt . |
Falsch |
results.metaData | Weitere Daten zu den Erkenntnissen | Falsch |
Ergebnisse.Instanzen | Array, das die Zeitfenster darstellt, in denen der Einblick erkannt wurde. | Wahr |
Ergebnisse.Instanzen.Vertrauen | Festgelegt mit dem Konfidenzergebnis, das vom externen Modell zurückgegeben wird | Falsch |
results.instances.start | Startzeit der Instanz im Video. Format: hh.mm.ss.ff |
Falsch |
results.instances.end | Endzeit des Abschnitts im Video. Format: hh.mm.ss.ff |
Falsch |
results.instances.adjustedStart | Wird verwendet, wenn sie in der Benutzeroberfläche angezeigt wird, legt den Wert von „Start“ fest | Falsch |
Ergebnisse.Instanzen.angepasstesEnde | Wird verwendet, wenn sie in der Benutzeroberfläche angezeigt wird, legt den Wert von „End“ fest. | Falsch |
Framerate
Azure AI Video Indexer unterstützt einen FPS für die Standard-Videoebene und vier FPS für die erweiterte Ebene. Höhere Bildfrequenzen werden nicht unterstützt. Sie können die Indizierung optimieren, indem Sie:
- Verarbeitung nur bestimmter Segmente, die von Interesse sind, z. B. Frames, die einen erkannten Sound, ein Objekt oder eine Person enthalten, oder
- Eine niedrigere FPS abtasten, z. B. alle 5 Sekunden.
Frame-Auswahl
Sie können die Parameter "Frames überspringen" und "Seitengröße" für die Zeitauswahl verwenden. Die Formel lautet: Der Wert für die übersprungenen Frames multipliziert mit der Bildfrequenz (FPS) plus der Wert für die Seitengröße multipliziert mit der Bildfrequenz (FPS). Sie kann zur Bestimmung des Zeitbereichs verwendet werden.
URL: https://api.videoindexer.ai/{location}/Accounts/{accountId}/Videos/{videoId}/FramesFilePaths[?urlsLifetimeSeconds][&pageSize][&skip][&accessToken]
Parameter:
Name | Beschreibung | Erforderlich |
---|---|---|
videoId | ID des Videos | Wahr |
urlsLifetimeSeconds | Lebensdauer der URLs in Sekunden | Wahr |
Pagesize | Maximale Anzahl von Frames, die für jeden Anruf zurückgegeben werden sollen | Falsch |
hüpfen | Anzahl der zu überspringenden Frames | Falsch |
accessToken | Sollte als Parameter in der URL-Abfragezeichenfolge oder im Autorisierungsheader als Bearer-Token angegeben werden. Der Zugriffstokenbereich sollte "Konto" sein und die Berechtigung "Reader" sein. | Wahr |
Antwort:FrameFilePathsResult
Name | Beschreibung | Erforderlich |
---|---|---|
Ergebnisse | Liste der FrameUriData | Falsch |
NextPage | Paginierungsdaten (skip, pageSize, isDone) | Falsch |
FrameFilePathData
Name | Beschreibung |
---|---|
Name | Name der Framedatei |
frameIndex | Index des Frames |
StartTime | Startzeit des Frames im Video |
EndTime | Endzeit des Frames im Video |
filePath | SAS-URI des Frames in der Cloudumgebung oder Dateipfad in Edgeumgebungen |
Beispieldaten, die von einer benutzerdefinierten Anwendung im Schemaformat gesendet werden
"customInsights": [
{
"Name": "tattoo",
"displayName": "Tattoo’s model",
"displayType": "CapsuleAndTag",
"Results": [
{
"id": 1,
"Type": "Dragon",
"WikiDataId": "57F",
"SubType": "Leg tattoo",
"Metadata": "",
"Instances": [
{
"Confidence": 0.49,
"AdjustedStart": "0:00:32.72",
"AdjustedEnd": "0:00:42.72",
"start": "0:00:32.72",
"end": "0:00:42.72",
}
]
}
]
}...