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 visión general de Azure AI Video Indexer trae tu 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.

Nota:

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, puede 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. Integre nuevamente la información personalizada en Video Indexer.
      Diagrama del proceso general traiga su propio flujo de trabajo.

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 contenido de vídeo y devuelva un análisis.
  2. Cree código personalizado que:
    1. Escucha eventos de Event Hubs.
    2. Extrae video id de los eventos.
    3. Recupera los recursos pertinentes mediante una llamada a las API VI. En este escenario, solicite Get Video Index y Get frames SAS URLs.
    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 Patch Update Video Index.

Esquema

Los valores para rellenar los datos personalizados son los siguientes:

Nombre Descripción Obligatorio
nombre Nombre del modelo de IA externa cierto
nombre para mostrar Nombre del grupo de información que se va a mostrar en Video Indexer cierto
tipo de visualización 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: dos niveles de texto. En el futuro se añadirán más.
falso
Resultados Matriz de objetos que representan la información detectada por el modelo de IA externo cierto
results.id El identificador proporcionado por el usuario del objeto de resultado debe ser único dentro del ámbito de los resultados. cierto
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. Entre los tipos de conclusiones, se incluyen: basketball, crowd clapping, white shirt. cierto
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. Entre los tipos de conclusiones, se incluyen: basketball #23, John clapping, Dana’s white shirt. falso
results.metaData Más datos sobre la información falso
results.instances Matriz que representa las ventanas de tiempo en las que se detectó la información. cierto
resultados.instancias.confianza Definido con la puntuación de confianza devuelta desde el modelo externo falso
results.instances.start Hora de inicio de la instancia en el vídeo. Formato: hh.mm.ss.ff falso
results.instances.end Hora de finalización de la instancia en el vídeo. Formato: hh.mm.ss.ff falso
results.instances.adjustedStart Se usa cuando se muestra en la IU, y se establece con el valor de inicio falso
resultados.instancias.ajusteFinal Se usa cuando se muestra en la IU, y se establece con el valor final falso

Velocidad de fotogramas

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 skip frames multiplicado por los FPS más el valor de page size multiplicado por los FPS, que se puede usar 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 cierto
urlsLifetimeSeconds Duración de las direcciones URL, en segundos cierto
Pagesize Número máximo de fotogramas devueltos por cada llamada falso
saltarse Número de fotogramas que se van a omitir falso
accessToken Se debe dar como parámetro en la cadena de consulta URL o en el encabezado Authorization como token tipo Bearer. El ámbito del token de acceso debe ser Cuenta y permiso debe ser Lector. cierto

Respuesta:FrameFilePathsResult

Nombre Descripción Obligatorio
Resultados Lista de FrameUriData Falso
NextPage Datos de paginación (skip, pageSize, isDone) Falso

FrameFilePathData

Nombre Descripción
nombre Nombre del archivo de marco
frameIndex Índice del fotograma
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 fotograma 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 Traiga su propio modelo