Share via


Overzicht van Azure AI Video Indexer Bring Your Own (BYO) AI Model (preview)

Dit artikel is een overzicht van Azure AI Video Indexer bring your own AI model.

Inleiding

Azure AI Video Indexer biedt een set API's die zijn geoptimaliseerd voor video- en audio-inhoud die kan worden toegepast op veel inhoudstypen. U kunt meer inzichten uit Microsoft-bronnen, aangepaste bronnen of bronnen van derden combineren met de ingebouwde Inzichten van Azure AI Video Indexer, allemaal in een naadloze ervaring.

Deze mogelijkheid is flexibel genoeg voor alle vormen en typen inzichten, waaronder detectiegeoriënteerde en classificatiegerichte AI's. U hebt de vrijheid om de gegevens te selecteren waarop uw externe model werkt, zoals de frames van de video, de volledige video of alleen het audiospoor. U kunt ook andere inzichten gebruiken die al zijn geproduceerd voor de video, zoals gedetecteerde objecten, gezichten en labels. Hiermee kunt u de externe analyse alleen uitvoeren op de gerelateerde sectie van de video, waardoor de prestaties worden verbeterd en de kosten worden verlaagd.

De functie is beschikbaar voor zowel de cloud- als edge-gebruiksscenario's.

DISCLAIMER: De gedragscode van Microsoft voor De Azure OpenAI-service is van toepassing op uw gebruik van de functie Bring Your Own Model, waaronder het recht van Microsoft om uw toegang en het gebruik van deze functie te beëindigen voor niet-naleving.

Prijzen

Met het BYO-model van Video Indexer kunnen gebruikers aangepaste inzichten toevoegen aan video insight-objecten zonder extra kosten te maken dan de vermelde kosten van het indexeringsproces. Eventuele kosten met betrekking tot de externe omgeving en het model moeten echter niet worden beschouwd als onderdeel van de factureringsprijs van Video Indexer. We raden u ten zeerste aan onze sectie aanbevolen procedures te bekijken om de externe logica te optimaliseren en de kosten te verlagen.

Algemene werkstroom

  1. Video wordt geüpload en geïndexeerd met Azure AI Video Indexer.
  2. Wanneer het indexeringsproces is voltooid, wordt er een gebeurtenis gemaakt.
  3. Uw aangepaste code luistert naar de gebeurtenis en start het proces na verwerking van de video.
    1. Krijg inzichten die zijn geëxtraheerd door Video Indexer.
    2. Sleutelframe ophalen voor een videosectie.
    3. Verzend het sleutelframe naar het aangepaste AI-model.
    4. Patch de aangepaste inzichten terug naar Video Indexer.

diagram van de hierboven beschreven werkstroom

Vereisten

Voordat u de BYO-modelfunctie kunt gaan gebruiken met Azure AI Video Indexer, moet u het volgende doen:

  1. Train of breng een extern AI-model dat videoassets ontvangt en een inzicht retourneert.
  2. Aangepaste code maken die:
    1. Luistert naar Event Hubss-gebeurtenissen.
    2. Extraheert de video id gebeurtenissen.
    3. Haalt de relevante assets op door VI-API's aan te roepen. In dit scenario vraagt u Get Video Index aan en haalt u SAS-URL's voor frames op.
    4. Hiermee worden de assets verzonden naar het externe AI-model.
    5. Hiermee maakt u een JSON-object op basis van de inzichten die zijn opgehaald uit het aangepaste AI-model.
    6. Vraagt video-index voor patchupdates aan.

Schema

De waarden voor het vullen van de aangepaste gegevens zijn als volgt:

Name Beschrijving Vereist
name Naam van extern AI-model true
displayName Inzichtgroepnaam die moet worden weergegeven in Video Indexer true
Displaytype Hiermee definieert u het type ui-weergave voor deze specifieke inzichtgroep. Standaardwaarde: Capsules
Mogelijke typen:
Capsule – alleen tekst op niveau
CapsuleAndTags - Tekst op twee niveaus wordt in de toekomst alleen toegevoegd.
false
resultaten Matrix van objecten die de inzichten vertegenwoordigen die zijn gedetecteerd door het externe AI-model true
results.id Door de gebruiker opgegeven id van het resultaatobject moet uniek zijn binnen het resultatenbereik true
results.type Dit veld vertegenwoordigt het type inzicht dat is gecategoriseerd door het externe AI-model. Het wordt gebruikt om een algemene inzichtcategorie te vertegenwoordigen, wat betekent dat er meerdere inzichten van dit type kunnen zijn die in een specifiek kader worden geïdentificeerd. Voorbeelden van inzichttypen zijn: "basketbal", "crowd clapping", "white shirt". true
results.subType Dit veld vertegenwoordigt het type inzicht dat is gecategoriseerd door het externe AI-model. Het wordt gebruikt om een specifieke inzichtcategorie weer te geven, wat betekent dat er slechts één inzicht van dit type in een specifiek frame kan worden geïdentificeerd. Voorbeelden van inzichttypen zijn: "basketbal #23", "John clapping", "Dana's witte shirt". false
results.metaData Meer gegevens over het inzicht false
results.instances Matrix die de tijdvensters vertegenwoordigt waarin het inzicht is gedetecteerd. true
results.instances.confidence Instellen met de betrouwbaarheidsscore die wordt geretourneerd door het externe model false
results.instances.start Begintijd van het exemplaar in de video. Formaat: hh.mm.ss.ff false
results.instances.end Eindtijd van het exemplaar in de video. Formaat: hh.mm.ss.ff false
results.instances.adjustedStart Wordt gebruikt wanneer deze wordt weergegeven in de gebruikersinterface, ingesteld met de waarde vanaf het startscherm false
results.instances.adjustedEnd Wordt gebruikt wanneer deze wordt weergegeven in de gebruikersinterface, ingesteld met de waarde van End false

Framesnelheid

Azure AI Video Indexer ondersteunt één FPS voor het videoniveau Basic/Standard en vier FPS voor het geavanceerde niveau. Hogere framesnelheden worden niet ondersteund. U kunt indexering optimaliseren door:

  • Alleen specifieke segmenten verwerken die interessant zijn, zoals frames die een gedetecteerd geluid, object of persoon bevatten, of
  • voorbeeld van een lagere FPS, bijvoorbeeld om de 5 seconden.

Frameselectie

U kunt de parameters voor het overslaan van frames en paginaformaat gebruiken voor tijdselectie. De formule is de waarde voor het overslaan van frames vermenigvuldigd met de FPS plus de waarde voor het paginaformaat vermenigvuldigd met de FPS, kan worden gebruikt om het tijdsbereik te bepalen.

URL:https://api.videoindexer.ai/{location}/Accounts/{accountId}/Videos/{videoId}/FramesFilePaths[?urlsLifetimeSeconds][&pageSize][&skip][&accessToken]

Parameters:

Name Beschrijving Vereist
videoId Id van de video true
urlsLifetimeSeconds levensduur van de URL's in seconden true
Pagesize Maximum aantal frames om elke aanroep te retourneren false
skip Frames om over te slaan false
accessToken Moet worden opgegeven als parameter in url-querytekenreeks of in de autorisatie-header als Bearer-token. Het bereik van het toegangstoken moet Account zijn en de machtiging moet Lezer zijn. true

Antwoord:FrameFilePathsResult

Name Beschrijving Vereist
resultaten Lijst met FrameUriData Onwaar
Nextpage Pagineringsgegevens (skip, pageSize, isDone) Onwaar

FrameFilePathData

Name Beschrijving
name Naam van het framebestand
frameIndex Index van het frame
Starttime Begintijd van het frame in de video
Eindtijd Eindtijd van het frame in de video
Filepath Sas-URI van het frame in de cloudomgeving of bestandspad in edge-omgevingen

Voorbeeldgegevens die zijn verzonden vanuit een aangepaste toepassing in schema-indeling

"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",
                    }
                ]
            }
        ]
    }... 

De Azure AI Video Indexer-API gebruiken