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

Ранее в этом году исследовательская группа из Microsoft Research Asia выпустила документ, в котором основное внимание уделяется объединению различных методов обнаружения видеообъектов в одной модели. В своей статье они унифицировали новейшие технологии, применяемые для обнаружения видеообъектов прямо сейчас. Эти методы пытаются решить проблемы, возникающие при обнаружении видеообъектов.

Обнаружение объектов от изображений к видео

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

Концептуально обнаружение видеообъектов можно разбить на 2 этапа:

  • Извлечение набора сверточных карт функций на входе через полностью сверточную магистральную сеть. Эта сеть обычно предварительно обучается задаче классификации ImageNet и настраивается позже.
  • Создание результатов обнаружения на картах признаков путем выполнения классификации областей и регрессии ограничивающей рамки либо для разреженных предложений объектов, либо для плотных скользящих окон через разветвленную подсеть (называемую сетями обнаружения).

По сути, обнаружение объектов в видео намного сложнее. Модель сталкивается с новыми проблемами, которых нет в неподвижных изображениях. Например, ухудшенный или затемненный внешний вид объектов (например, размытость изображения, препятствие). Более того, если бы вам пришлось напрямую применять модели на основе изображений к каждому кадру видео, вам пришлось бы иметь дело с огромными вычислительными мощностями для обработки каждого отдельного кадра видео.

Недавние работы по обнаружению видеообъектов пробовали различные способы борьбы с ними. Примечательно, что агрегирование разреженных функций (бумажный) устраняет избыточность функций и данных в последовательных кадрах для сокращения времени вычислений и времени выполнения. Идея состоит в том, что последовательные кадры обычно содержат схожую информацию об объекте. Если мы будем рассматривать только ключевые кадры, которые содержат важные индикаторы функций, мы сможем сократить количество обрабатываемых кадров. Агрегирование разреженных функций сокращает время выполнения, но по-прежнему подвержено ошибкам, приводящим к более низкой средней средней точности.

Плотная агрегация элементов (бумага), с другой стороны, призвана улучшить качество элементов в кадрах, а также точность обнаружения. Основная интуиция заключается в том, что глубокие черты ухудшаются из-за ухудшения внешнего вида во всех кадрах. Во время вывода сеть признаков оценивается на всех кадрах. Для любого кадра карты характеристик для всех кадров в нескольких последовательных кадрах деформируются на кадр для оценки . Плотная агрегация признаков увеличивает среднюю среднюю точность (mAP) модели, однако значительно замедляет ее.

Хотя оба метода ориентированы на улучшение различных аспектов, они используют одни и те же принципы: оценки движения включены в сетевую архитектуру, а сквозное обучение всех модулей выполняется в нескольких кадрах. Таким образом, они дополняют друг друга по своей природе. Ключевое различие между двумя методами заключается в том, что первый оценивает разреженные ключевые кадры (например, каждый 10-й кадр), тогда как второй рассматривает все кадры как ключевые кадры.

Собираем все вместе

Основываясь на сильных и слабых сторонах двух описанных выше базовых методов, модель расширена тремя дополнительными методами:

  • Редко рекурсивная агрегация функций
    Оценивает карты функций с помощью сети функций и применяет рекурсивную агрегацию и аппроксимацию только к разреженным ключевым кадрам.
  • Пространственно-адаптированное частичное обновление функций
    Применяя идею распространения функций для неключевых кадров, потоковые сети используются для оценки того, насколько хороша конкретная функция перед обновлением. последующие кадры с характеристическими картами.
  • Адаптивное ко времени планирование ключевых кадров
    Вместо того, чтобы наивно выбирать ключевые кадры через определенный интервал, необходимо тщательно продумать, какие кадры могут считаться ключевыми кадрами. Такие качества, как качественные карты функций в кадре, оцениваются, чтобы гарантировать, что выбранные ключевые кадры обеспечивают наилучшие характеристики для обнаружения объектов. Чтобы выбрать ключевые кадры, используется эвристика, которая наблюдает за изменяющимися проявлениями большого движения, и политика планирования оракула. Оракул использует достоверную информацию для выбора лучших ключевых кадров.

Сетевые архитектуры

Наряду с вышеупомянутыми методами используются 3 типа подсетей:

  • Проточная сеть
    На основе работы этого документа поточная сеть используется для оценки движения и оптического потока. Он используется в этой модели, чтобы предвидеть, где будут появляться элементы в кадрах, путем прогнозирования перемещения пикселей по кадрам. Поточная сеть использует сверточные нейронные сети, которые способны решать задачу оценки оптического потока в качестве задачи обучения с учителем.
  • Функциональная сеть
    Немного измененная модель ResNet-101. Удалив конечный средний пул и полностью связанные слои, модель может быть адаптирована к целевым объектам. Эта сеть - это то, что делает основную часть обработки функций.
  • Сеть обнаружения
    Современные сети регионального предложения и полностью сверточные сети на основе регионов обнаруживают объекты в кадрах.

Подводя итог, можно сказать, что подход Microsoft:

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

В документе упоминается, что их методы были успешными в эффективном управлении вычислительными затратами при сохранении точности. Достижение MAP 77,8 и 15,2 кадра в секунду на графическом процессоре Nvidia Tesla K40. По сравнению с победившей в конкурсе ImageNet VID Challenge 2017 модель Microsoft обеспечивает увеличение MAP на 1%, при этом жертвуя лишь 0,2 кадра в секунду.

Изучение подходов, используемых исследовательской группой Microsoft Research Asia, дает хорошее представление о создании собственной модели обнаружения видеообъектов. По сравнению с обнаружением объектов изображения, это определенно область, которая может найти более практическое применение после достижения стабильного уровня производительности.

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

Считаете это полезным? Не стесняйтесь разбить этот хлопок и посмотреть другие мои работы. 😄

Джеймс Ли - научный сотрудник по искусственному интеллекту в Nurture.Ai. Недавний выпускник Университета Монаша в области компьютерных наук, он пишет интересные статьи по искусственному интеллекту и глубокому обучению. Найдите его в Твиттере по адресу @ jamswamsa.