Freigeben über


Azure KI Video Indexer Bring Your Own (BYO) KI-Modell – Übersicht

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

  1. Video wird hochgeladen und mit Azure AI Video Indexer indiziert.
  2. Nach Abschluss des Indizierungsprozesses wird ein Ereignis erstellt.
  3. Ihr benutzerdefinierter Code lauscht auf das Ereignis und startet den Video-Nachbearbeitungsprozess.
    1. Abrufen von Erkenntnissen, die von VideoIndexer extrahiert wurden.
    2. Keyframe für einen Videoabschnitt abrufen.
    3. Senden Sie den Keyframe an das benutzerdefinierte KI-Modell.
    4. Fügen Sie die benutzerdefinierten Erkenntnisse wieder in Video Indexer ein.
      Diagramm des allgemeinen Bring-dein-eigenes-Arbeitsablaufprozesses.

Voraussetzungen

Bevor Sie mit der Verwendung des BYO-Modellfeatures mit azure AI Video Indexer beginnen können, müssen Sie:

  1. Trainieren oder setzen Sie ein externes KI-Modell ein, das Videoressourcen verarbeitet und eine Analyse liefert.
  2. Erstellen Sie benutzerdefinierten Code, der:
    1. Lauscht auf Event Hubs-Ereignisse.
    2. Extrahiert video id aus den Ereignissen.
    3. Ruft die relevanten Ressourcen durch Aufrufen von VI-APIs ab. Fordern Sie in diesem Szenario "Videoindex abrufen" und "Frames-SAS-URLs abrufen" an.
    4. Sendet die Ressourcen an das externe KI-Modell.
    5. Erstellt ein JSON-Objekt basierend auf den Erkenntnissen, die aus dem benutzerdefinierten KI-Modell abgerufen wurden.
    6. 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",
                    }
                ]
            }
        ]
    }... 

Eigene Modellmuster mitbringen