Compartir a través de


Introducción al modelo de IA de Azure AI Video Indexer Bring Your Own (BYO)

Este artículo es una introducción a Azure AI Video Indexer traiga su propio modelo de IA.

Introducción

Puede combinar información de otros orígenes, incluidos modelos de terceros, clasificación y detección, para generar un análisis detallado de los datos multimedia. Puede usar uno o varios modelos ofrecidos por Microsoft, un modelo personalizado externo o un modelo personalizado de persona, marca, voz o lenguaje ofrecido por Azure Video Indexer.

La característica también está disponible para VI habilitada por Arc.

DECLINACIÓN DE RESPONSABILIDADES: el código de conducta de Microsoft para el servicio Azure OpenAI se aplica al uso de la característica Bring Your Own Model, que incluye el derecho de Microsoft a interrumpir el acceso y el uso de esta característica para no cumplimiento.

Precios

Con el modelo BYO de Video Indexer, los usuarios pueden agregar información personalizada a objetos de información de vídeo sin incurrir en ningún costo adicional más allá del costo enumerado del proceso de indexación. Sin embargo, los costos relacionados con el entorno externo y el modelo no deben considerarse parte del precio de facturación de Video Indexer. Se recomienda encarecidamente revisar nuestra sección de procedimientos recomendados para optimizar la lógica externa y reducir los costos.

Flujo de trabajo general

  1. El vídeo se carga e indexa con Video Indexer de Azure AI.
  2. Cuando se completa el proceso de indexación, se crea un evento.
  3. El código personalizado escucha el evento e inicia el proceso posterior al procesamiento del vídeo.
    1. Obtenga información extraída por Video Indexer.
    2. Obtenga el fotograma clave de una sección de vídeo.
    3. Envíe el fotograma clave al modelo de IA personalizado.
    4. Vuelva a aplicar una revisión de la información personalizada a Video Indexer.

diagrama del flujo de trabajo descrito anteriormente

Requisitos previos

Para empezar a usar la característica de modelo BYO con Video Indexer de Azure AI, debe hacer lo siguiente:

  1. Entrene o traiga un modelo de IA externo que reciba recursos de vídeo y devuelva una información.
  2. Cree código personalizado que:
    1. Escucha eventos de Event Hubss.
    2. Extrae de video id los eventos.
    3. Recupera los recursos pertinentes mediante una llamada a las API VI. En este escenario, solicite obtener índice de vídeo y obtener direcciones URL de SAS de fotogramas.
    4. Envía los recursos al modelo de IA externo.
    5. Crea un objeto JSON basado en la información recuperada del modelo de IA personalizado.
    6. Solicita el índice de vídeo de actualización de revisiones.

Esquema

Los valores para rellenar los datos personalizados son los siguientes:

Nombre Descripción Obligatorio
name Nombre del modelo de IA externa true
displayName Nombre del grupo de información que se va a mostrar en Video Indexer true
displayType Define el tipo de representación de la interfaz de usuario para este grupo de información específico. Valor predeterminado: Cápsulas
Tipos posibles:
Cápsula : solo texto de un nivel
CapsuleAndTags : solo se agregará texto de dos niveles más en el futuro.
false
results Matriz de objetos que representan la información detectada por el modelo de IA externo true
results.id El identificador proporcionado por el usuario del objeto de resultado debe ser único dentro del ámbito de los resultados. true
results.type Este campo representa el tipo de información clasificada por el modelo de IA externo. Se usa para representar una categoría de información general, lo que significa que podría haber varias conclusiones de este tipo identificadas en un marco específico. Algunos ejemplos de tipos de información son: "baloncesto", "clapping de multitud", "camisa blanca". true
results.subType Este campo representa el tipo de información clasificada por el modelo de IA externo. Se usa para representar una categoría de información específica, lo que significa que solo podría haber una única información de este tipo identificada en un marco específico. Algunos ejemplos de tipos de información son: "baloncesto #23", "John clapping", "camisa blanca de Dana". false
results.metaData Más datos sobre la información false
results.instances Matriz que representa las ventanas de tiempo en las que se detectó la información. true
results.instances.confidence Establecer con la puntuación de confianza devuelta desde el modelo externo false
results.instances.start Hora de inicio de la instancia en el vídeo. Formato: hh.mm.ss.ff false
results.instances.end Hora de finalización de la instancia en el vídeo. Formato: hh.mm.ss.ff false
results.instances.adjustedStart Se usa cuando se muestra en la interfaz de usuario, se establece con el valor de Start false
results.instances.adjustedEnd Se usa cuando se muestra en la interfaz de usuario, establezca con el valor de End false

Framerate

Video Indexer de Azure AI admite un FPS para el nivel de vídeo Básico/Estándar y cuatro FPS para el nivel avanzado. No se admiten velocidades de fotogramas más altas. Puede optimizar la indexación mediante:

  • Procesar solo segmentos específicos que son de interés, como marcos que incluyen un sonido detectado, un objeto o una persona, o
  • muestree un FPS inferior, por ejemplo, cada 5 segundos.

Selección de fotogramas

Puede usar los parámetros skip frames y page size para la selección de tiempo. La fórmula es el valor de los fotogramas de omisión multiplicado por fps más el valor de tamaño de página multiplicado por fps para determinar el intervalo de tiempo.

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

Parámetros:

Nombre Descripción Obligatorio
videoId Id. del vídeo true
urlsLifetimeSeconds duración de las direcciones URL en segundos true
Pagesize Número máximo de fotogramas para devolver cada llamada false
skip Fotogramas que se van a omitir false
accessToken Se debe dar como parámetro en la cadena de consulta url o en el encabezado authorization como token de portador. El ámbito del token de acceso debe ser Cuenta y permiso debe ser Lector. true

Respuesta: FrameFilePathsResult

Nombre Descripción Obligatorio
results Lista de FrameUriData False
NextPage Paginación de datos (skip, pageSize, isDone) False

FrameFilePathData

Nombre Descripción
name Nombre del archivo de marco
frameIndex Índice del marco
StartTime Hora de inicio del fotograma en el vídeo
EndTime Hora de finalización del fotograma en el vídeo
filePath URI de Sas del marco en el entorno de nube o la ruta de acceso de archivo en entornos perimetrales

Datos de ejemplo enviados desde una aplicación personalizada en formato de esquema

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

Ejemplos de modelos Bring Your Own

Ejemplos de BYO

Uso de la API de Video Indexer de Azure AI