Ö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
- Videon laddas upp och indexeras med Azure AI Video Indexer.
- När indexeringsprocessen är klar skapas en händelse.
- Din anpassade kod lyssnar på händelsen och startar videons efterbearbetningsprocess.
- Hämta insikter som extraherats av Video Indexer.
- Hämta nyckelram för ett videoavsnitt.
- Skicka nyckelramen till den anpassade AI-modellen.
- Korrigera de anpassade insikterna till Video Indexer.
Förutsättningar
Innan du kan börja använda BYO-modellfunktionen med Azure AI Video Indexer måste du:
- Träna eller ta med en extern AI-modell som tar emot videotillgångar och returnerar en insikt.
- Skapa anpassad kod som:
- Lyssnar efter Event Hubss-händelser.
- Extraherar
video id
från händelserna. - 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.
- Skickar tillgångarna till den externa AI-modellen.
- Skapar ett JSON-objekt baserat på de insikter som hämtats från den anpassade AI-modellen.
- 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",
}
]
}
]
}...
Relaterat innehåll
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för