Översikt över Azure AI Video Indexer Bring Your Own (BYO) AI Model (förhandsversion)

Den här artikeln är en översikt över Azure AI Video Indexer Bring Your Own AI-modellen.

Introduktion

Azure AI Video Indexer erbjuder en uppsättning API:er som är optimerade för video- och ljudinnehåll som kan tillämpas på många innehållstyper. Du kan kombinera fler insikter från Microsoft-källor, anpassade källor eller källor från tredje part med de inbyggda Azure AI Video Indexer-insikterna på ett sömlöst sätt.

Den här funktionen är tillräckligt flexibel för att hantera alla former och typer av insikter, inklusive identifieringsorienterade och klassificeringsorienterade API:er. Du har friheten att välja de data som din externa modell använder, till exempel videons bildrutor, hela videon eller bara ljudspåret. Du kan också använda andra insikter som redan har skapats för videon, till exempel identifierade objekt, ansikten och etiketter. På så sätt kan du bara köra den externa analysen på det relaterade avsnittet i videon, förbättra prestanda och minska kostnaderna.

Funktionen är tillgänglig för både moln- och gränsanvändningsfall.

DISCLAIMER: Microsofts uppförandekod för Azure OpenAI-tjänsten gäller för din användning av funktionen Bring Your Own Model, som innehåller Microsofts rätt att avbryta din åtkomst och användning av den här funktionen för inkompatibilitet.

Prissättning

Med Video Indexer BYO-modellen kan användare lägga till anpassade insikter i videoinsiktobjekt utan att medföra några ytterligare kostnader utöver den angivna kostnaden för indexeringsprocessen. Kostnader relaterade till den externa miljön och modellen bör dock inte betraktas som en del av Video Indexer-faktureringspriset. Vi rekommenderar starkt att du granskar avsnittet med metodtips för att optimera den externa logiken och minska kostnaderna.

Allmänt arbetsflöde

  1. Videon laddas upp och indexeras med Azure AI Video Indexer.
  2. När indexeringsprocessen är klar skapas en händelse.
  3. Din anpassade kod lyssnar på händelsen och startar videons efterbearbetningsprocess.
    1. Hämta insikter som extraherats av Video Indexer.
    2. Hämta nyckelram för ett videoavsnitt.
    3. Skicka nyckelramen till den anpassade AI-modellen.
    4. Korrigera de anpassade insikterna till Video Indexer.

diagram över arbetsflödet som beskrivs ovan

Förutsättningar

Innan du kan börja använda BYO-modellfunktionen med Azure AI Video Indexer måste du:

  1. Träna eller ta med en extern AI-modell som tar emot videotillgångar och returnerar en insikt.
  2. Skapa anpassad kod som:
    1. Lyssnar efter Event Hubss-händelser.
    2. Extraherar video id från händelserna.
    3. Hämtar relevanta tillgångar genom att anropa VI-API:er. I det här scenariot begär du Hämta videoindex och Hämta bildrutors SAS-URL:er.
    4. Skickar tillgångarna till den externa AI-modellen.
    5. Skapar ett JSON-objekt baserat på de insikter som hämtats från den anpassade AI-modellen.
    6. Begär uppdatering av videoindex för uppdatering.

Schema

Värdena för att fylla i anpassade data är följande:

Name Beskrivning Krävs
Namn Namn på extern AI-modell true
displayName Namn på insiktsgrupp som ska visas i Video Indexer true
displayType Definierar typen av gränssnittsrepresentation för den här specifika insiktsgruppen. Standardvärde: Kapslar
Möjliga typer:
Kapsel – endast text på en nivå
CapsuleAndTags -Två nivåer text bara mer kommer att läggas till i framtiden.
falskt
Resultat Matris med objekt som representerar de insikter som identifierats av den externa AI-modellen true
results.id Användardefinerat ID för resultatobjektet bör vara unikt inom resultatomfånget true
results.type Det här fältet representerar den typ av insikt som kategoriserades av den externa AI-modellen. Den används för att representera en allmän insiktskategori, vilket innebär att det kan finnas flera insikter av den här typen som identifieras i en viss ram. Exempel på insiktstyper är: "basket", "publikklappning", "vit skjorta". true
results.subType Det här fältet representerar den typ av insikt som kategoriserades av den externa AI-modellen. Den används för att representera en specifik insiktskategori, vilket innebär att det bara kan finnas en enda insikt av den här typen som identifieras i en specifik ram. Exempel på insiktstyper är: "basket #23", "John clapping", "Dana's white shirt". falskt
results.metaData Mer data om insikten falskt
results.instances Matris som representerar den tid då insikten identifierades i. true
results.instances.confidence Ange med konfidenspoängen som returneras från den externa modellen falskt
results.instances.start Starttid för instansen i videon. Format: hh.mm.ss.ff falskt
results.instances.end Sluttid för instansen i videon. Format: hh.mm.ss.ff falskt
results.instances.adjustedStart Används när det visas i användargränssnittet och anges med värdet från Start falskt
results.instances.adjustedEnd Används när det visas i användargränssnittet och anges med värdet från Slutet falskt

Bildfrekvens

Azure AI Video Indexer stöder en FPS för videonivån Basic/Standard och fyra FPS för den avancerade nivån. Högre bildfrekvenser stöds inte. Du kan optimera indexeringen genom att:

  • Bearbeta endast specifika segment som är av intresse, till exempel bildrutor som innehåller ett identifierat ljud, ett objekt eller en person, eller
  • exempel på en lägre FPS, till exempel var 5:e sekund.

Markering av ram

Du kan använda parametrarna hoppa över bildrutor och sidstorlek för tidsval. Formeln är värdet hoppa över bildrutor multiplicerat med FPS plus sidstorleksvärdet multiplicerat med FPS kan användas för att fastställa tidsintervallet.

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

Parametrar:

Name Beskrivning Krävs
videoId ID för videon true
urlsLifetimeSeconds livslängden för URL:erna i sekunder true
pageSize Maximalt antal bildrutor som ska returneras varje anrop falskt
Hoppa över Ramar att hoppa över falskt
accessToken Ska anges som parameter i URL-frågesträngen eller i auktoriseringshuvudet som ägartoken. Omfånget för åtkomsttoken ska vara Konto och behörigheten ska vara Läsare. true

Svar:FrameFilePathsResult

Name Beskrivning Krävs
Resultat Lista över FrameUriData Falsk
Nästa sida Växlingsdata (hoppa över, pageSize, isDone) Falsk

FrameFilePathData

Name Beskrivning
Namn Namnet på ramfilen
frameIndex Index för ramen
Starttime Starttid för bildrutan i videon
Endtime Sluttid för bildrutan i videon
Filepath Sas-URI för ramen i molnmiljön eller filsökvägen i gränsmiljöer

Exempeldata som skickas från anpassat program i schemaformat

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

Använda Api:et för Azure AI Video Indexer