Поделиться через


Обзор модели ИИ Для индексатора видео Azure (BYO)

В этой статье представлен обзор Индексатора видео Azure AI, который позволяет использовать собственную модель ИИ.

Введение

Вы можете объединить аналитические сведения из других источников, включая сторонние, модели классификации и обнаружения, чтобы получить подробный анализ данных мультимедиа. Вы можете использовать одну или несколько моделей, предлагаемых корпорацией Майкрософт, внешней пользовательской моделью или настраиваемой пользователем, фирменной символикой, речью или языковой моделью, предлагаемой Индексатором видео Azure.

Эта функция также доступна для VI, включенной Arc.

ДИСКЛАЙМЕР. Кодекс поведения Майкрософт для Службы OpenAI для Azure применяется к использованию функции "Принести собственную модель", которая включает в себя право корпорации Майкрософт прекратить доступ и использовать эту функцию для несоответствия.

Цены

С помощью модели BYO индексатора видео пользователи могут добавлять пользовательские аналитические сведения в объекты аналитики видео без каких-либо дополнительных затрат за пределы указанной стоимости процесса индексирования. Однако любые затраты, связанные с внешней средой и моделью, не должны считаться частью цены на выставление счетов Индексатора видео. Мы настоятельно рекомендуем ознакомиться с нашим разделом рекомендаций, чтобы оптимизировать внешнюю логику и сократить затраты.

Общий рабочий процесс

  1. Видео передается и индексируется с помощью индексатора видео Azure AI.
  2. После завершения процесса индексирования создается событие.
  3. Пользовательский код прослушивает событие и запускает процесс последующей обработки видео.
    1. Получение аналитических сведений, извлеченных индексатором видео.
    2. Получение ключевого кадра для раздела видео.
    3. Отправьте ключевой кадр в пользовательскую модель ИИ.
    4. Исправление пользовательской аналитики обратно в Индексатор видео.

схема рабочего процесса, описанного выше

Необходимые компоненты

Прежде чем начать использовать функцию модели BYO с индексатором видео Azure AI, необходимо:

  1. Обучение или получение внешней модели искусственного интеллекта, которая получает видеоматериалы и возвращает аналитические сведения.
  2. Создайте пользовательский код, который:
    1. Прослушивает события Центров событий.
    2. Извлекает video id из событий.
    3. Извлекает соответствующие ресурсы, вызывая API-интерфейсы VI. В этом сценарии запросите URL-адреса SAS для получения индекса видео и получения кадров.
    4. Отправляет ресурсы во внешнюю модель ИИ.
    5. Создает объект JSON на основе аналитических сведений, полученных из пользовательской модели ИИ.
    6. Запросы индекса видео обновления исправлений.

Схема

Значения для заполнения пользовательских данных приведены следующим образом:

Имя Description Обязательный
name Имя модели внешнего искусственного интеллекта true
displayName Имя группы аналитики, отображаемое в Индексаторе видео true
displayType Определяет тип представления пользовательского интерфейса для конкретной группы аналитических сведений. Значение по умолчанию: капсулы
Возможные типы:
Капсула — только один уровень текста
КапсулаAndTags -Два уровня текста будет добавлено только в будущем.
false
Результаты Массив объектов, представляющих аналитические сведения, обнаруженные внешней моделью искусственного интеллекта true
results.id Идентификатор предоставленного пользователем объекта результата должен быть уникальным в области результатов. true
results.type Это поле представляет тип аналитических сведений, классифицированных внешней моделью ИИ. Он используется для представления общей категории аналитических сведений, что означает, что в определенном кадре может быть несколько аналитических сведений этого типа. Примеры типов аналитических сведений: "баскетбол", "толпа хлопает", "белая рубашка". true
results.subType Это поле представляет тип аналитических сведений, классифицированных внешней моделью ИИ. Он используется для представления определенной категории аналитических сведений, что означает, что в определенном кадре может быть только одно представление об этом типе. Примеры типов аналитических сведений: "баскетбол #23", "Джон хлопает", "Белая рубашка Дана". false
results.metaData Дополнительные данные о аналитических сведениях false
results.instances Массив, представляющий периоды времени, в которые обнаружена информация. true
results.instances.confidence Установка с оценкой достоверности, возвращаемой из внешней модели false
results.instances.start Время начала экземпляра в видео. Формат: hh.mm.ss.ff false
results.instances.end Время окончания экземпляра в видео. Формат: hh.mm.ss.ff false
results.instances.adjustedStart Используется при отображении в пользовательском интерфейсе со значением из start false
results.instances.adjustedEnd Используется при отображении в пользовательском интерфейсе значения из end false

Framerate

Индексатор видео Azure AI поддерживает один FPS для уровня "Базовый" или "Стандартный" и четыре FPS для расширенного уровня. Более высокие частоты кадров не поддерживаются. Индексирование можно оптимизировать, выполнив следующие действия.

  • Обработка только определенных сегментов, представляющих интерес, таких как кадры, включающие обнаруженный звук, объект или лицо или
  • пример нижнего FPS, например каждые 5 секунд.

Выбор кадра

Для выбора времени можно использовать параметры пропуска кадров и размера страницы. Формула — это значение кадров пропуска, умноженное на FPS, а также значение размера страницы, умноженное на FPS, можно использовать для определения диапазона времени.

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

Параметры:

Имя Description Обязательный
videoId Идентификатор видео true
urlsLifetimeSeconds время существования URL-адресов в секундах true
pageSize Максимальное количество кадров для возврата каждого вызова false
skip Пропускать кадры false
accessToken Должен быть задан в качестве параметра в строке запроса URL-адреса или в заголовке авторизации в качестве маркера носителя. Область маркера доступа должна быть учетной записью, а разрешение должно быть читателем. true

Ответ: FrameFilePathsResult

Имя Description Обязательный
Результаты Список FrameUriData False
NextPage Разбиение на страницы (skip, pageSize, isDone) False

FrameFilePathData

Имя Description
name Имя файла кадра
frameIndex Индекс кадра
StartTime Время начала кадра в видео
EndTime Время окончания кадра в видео
filePath URI sas кадра в облачной среде или пути к файлу в пограничных средах

Пример данных, отправленных из пользовательского приложения в формате схемы

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

Создание собственных примеров модели

Примеры BYO

Использование API индексатора видео Azure AI