В этом году на Суперкубке Mountain Dew представила, казалось бы, простую задачу: подсчитать количество бутылок Mountain Dew в своем 30-секундном рекламном ролике Super Bowl. Найдите секунду и попробуйте сделать это самостоятельно здесь:

Сдаться еще? Это сложнее, чем кажется. Для масштабного решения сложных визуальных задач вам нужны инструменты, вам нужен искусственный интеллект и вам нужна платформа. Платформа искусственного интеллекта Sixgill, Sense, позволяет компаниям извлекать значимую информацию из данных изображений и видео для решения бизнес-задач. Наш руководитель по инновациям счел Mtn Dew Super Bowl Challenge критически важной задачей для бизнеса, поэтому мы сразу приступили к работе, чтобы использовать Sense для ее решения. В этом посте мы рассмотрим наш подход к этой задаче, а также продемонстрируем, как наша унифицированная платформа искусственного интеллекта может быстро ее решить.

Шаг 1. Создайте набор данных

Сборка набора данных обычно является первой задачей в процессе ИИ. В типичном случае использования в реальном мире нужно было бы извлечь несколько часов видеоданных, но для этой задачи весь массив данных составлял 30-секундный рекламный ролик. В качестве функции платформы видео можно разбивать на кадры с заранее определенной частотой кадров или FPS (кадры в секунду). Мы выбрали 24 кадра в секунду, что было исходным FPS для видео - 24 кадра в секунду умноженные на 30 секунд, дают примерно 720 кадров (или изображений). Поскольку у нас был небольшой набор данных, мы смогли пометить весь набор.

Шаг 2. Добавьте аннотации к данным

Далее мы определили процедуру маркировки в соответствии с официальными инструкциями (с примерами). Инструкции по розыгрышу квалификационных бутылок были довольно подробными. Если вам интересно их прочитать, они здесь.

Аннотации данных - критический (и обычно требующий много времени) шаг в создании точной модели машинного обучения для этого типа проекта компьютерного зрения. Аннотации - это способ, которым модель «узнает», что важно в видео. Платформа Sense имеет встроенную маркировку с ускорением AI, которая автоматизирует стандартные повторяющиеся задачи аннотации. Эти функции могут сократить время маркировки до 20 раз и повысить качество аннотаций.

Мы использовали наш интеллектуальный инструмент выделения многоугольника, SmartPoly, показанный ниже, поэтому вместо того, чтобы кропотливо рисовать контур каждой бутылки, инструмент привязывается к контуру бутылок. Мы также использовали нашу функцию Track Forward на базе искусственного интеллекта, которая берет одну аннотацию и отслеживает ее по кадрам в видео. Это означает, что мы помечали бутылки, которые летели через сцену, только один раз, а Track Forward позаботился обо всем остальном. Если бы набор данных был больше, мы бы использовали наши Sense Labeling Services, чтобы делать аннотации для нас.

После того, как все наши данные были помечены, мы обучили модель идентифицировать все эти бутылки.

Шаг 3: Обучите модель

Sense SmartML (в настоящее время доступен для наших корпоративных клиентов в бета-версии и скоро станет общедоступным) может обучать модели прямо с этикеток в Sense без какого-либо кода. Хотя мы уже промаркировали весь массив данных для этой задачи, модель служит двум целям: 1) интеграция в конвейер машинного обучения и 2) «второе мнение» о этикетках для выявления любых бутылок, которые могли быть пропущены во время маркировки. Поскольку набор данных был относительно небольшим, обучение заняло около часа.

Шаг 4: соберите конвейер машинного обучения

Теперь, когда у нас есть модель машинного обучения, как мы собираемся проводить подсчет? Если просто запустить модель на каждом кадре, это не поможет. Нам нужно было понимать идентичность объектов от кадра к кадру, чтобы не пересчитывать бутылки дважды. Были и резкие смены сцены. Как мы с этим справимся?

Отслеживание объектов

Отслеживание объекта - это процесс отслеживания объекта в кадрах видео. Отслеживание объектов принимает обнаруженные данные в качестве входных и выходных идентификаторов объектов. ML Pipeline от Sense обеспечивает надежное отслеживание объектов "из коробки", которое включает в себя движение объекта, визуальное сходство объекта и допуск на загорание.

Обнаружение сцены

Слежение за объектом предполагает фиксированную сцену во время работы, но рекламные ролики редко бывают одной и той же сценой. Как мы определяем, когда нужно сбросить наш трекер объектов? Сцены можно обнаруживать с помощью различных показателей сходства изображений. Например, на приведенной ниже диаграмме показан пример изменения сцены только путем измерения средней интенсивности пикселей. Группируя кадры в сцены, трекеры объектов могут быть сброшены в нужное время.

Шаг 5: Подсчитайте количество бутылок!

Последний шаг - добавление уникальных идентификаторов объектов из всех сцен. Хотя этот подсчет довольно близко приближает нас, особенно проблематично одно правило.

  • При правильном подсчете бутылок НЕ будут учитываться повторяющиеся изображения подходящей бутылки. Бутылки, изображенные в одном и том же месте / в одном месте на протяжении всего видео, засчитываются только один раз. В случае сцены американских горок с несколькими автомобилями изображенные автомобили находятся в непрерывном цикле на протяжении всего рекламного ролика, и их следует учитывать только один раз.

Чтобы правильно решить эту проблему, требуется еще несколько приемов: представления о постоянстве объекта, абстрактные рассуждения и, возможно, чтение мыслей разработчиков задач. К счастью, команда Sixgill может применять эти правила в дополнение к работе, выполняемой за нас платформой Sense. Таким образом, наш номер - 223.

Резюме

В конце концов, оказалось, что эта задача не сильно отличается от проблем, с которыми наши клиенты сталкиваются каждый день и решают их с помощью нашей платформы Sense. Используя нашу платформу искусственного интеллекта и наш обширный опыт в создании и внедрении искусственного интеллекта для предприятий, Sixgill быстро справился с этой задачей. Хотя время покажет, правильно ли мы подсчитали количество бутылок (учитывая некоторую интерпретацию правил) **, мы надеемся, что показали, как правильный набор инструментов может сделать, казалось бы, сложные проблемы полностью разрешимыми.

Если у вашего бизнеса есть проблема с искусственным интеллектом, мы хотели бы услышать об этом, или, если вы готовы начать, зарегистрируйтесь в Sense сегодня и начните маркировать свои данные.

** В реальных случаях использования мы обычно использовали бы больший набор данных для обучения модели, но, несмотря на это, мы смогли достичь точности 91,7%, что является впечатляющим достижением для модели, обученной всего на одном видео!