Сердце Машины Колонна
Автор: Ю Тинсонг
Обнаружение ключевых точек лица является ключевым шагом в области распознавания и анализа лиц, а также предпосылкой и прорывом в решении других задач, связанных с лицами, таких как автоматическое распознавание лиц, анализ выражений, трехмерная реконструкция лица и трехмерная анимация. В последние годы методы глубокого обучения успешно применялись во многих областях, таких как распознавание и анализ изображений, распознавание речи и обработка естественного языка, благодаря их возможностям автоматического обучения и непрерывного обучения, и принесли значительные улучшения в этих областях. Поэтому в этой статье проводится исследование обнаружения ключевых точек лица для методов глубокого обучения.
Ключевые слова:ключевые точки лица, характерные точки лица, выравнивание лица, сверточная нейронная сеть
содержание
Введение
2. Метод обнаружения ключевой точки лица
2.1 ASM (Active Shape Models)
2.2 AAM (активные модели внешнего вида)
2.3 СЛР (каскадная регрессия поз)
2.4 DCNN
2.5 DCNN для Face++
2.6 TCDCN
2.7 MTCNN
2.8 TCNN (модифицированные сверточные нейронные сети)
2.9 DAN (сети глубокого выравнивания)
3. Заключение
использованная литература
Введение
Обнаружение ключевых точек лица, также известное как обнаружение ключевых точек лица, локализация или выравнивание лица, относится к заданному изображению лица для определения ключевых областей лица, включая брови, глаза, нос, рот, контуры лица и т. д. Аналогично распознаванию лица , обнаружение ключевых точек лица также является сложной задачей из-за таких факторов, как поза и окклюзия.
Обнаружение ключевых точек лица является важным базовым звеном в задачах распознавания лиц Точное обнаружение ключевых точек лица играет ключевую роль во многих научных исследованиях и прикладных темах, таких как коррекция осанки лица, распознавание осанки, распознавание выражений, мониторинг усталости, идентификация формы рта. и Т. Д. Таким образом, получение высокоточных ключевых точек лица всегда было актуальной проблемой в области компьютерного зрения, распознавания образов и обработки изображений.
Методы обнаружения ключевых точек лица можно условно разделить на три типа, а именно: традиционные методы, основанные на ASM (модель активной формы)[1] и AAM (модель активного внешнего вида)[2,3]; методы, основанные на каскадной регрессии формы[4]. методы, основанные на глубоком обучении [5-10]. Если его разделить в зависимости от того, является ли он параметризованным или нет, его можно разделить на параметризованные методы и непараметрические методы, ASM, AAM и CLM [11] относятся к параметризованным методам, а методы каскадной регрессии и глубокого обучения относятся к непараметрическим методам. параметрические методы. Методы, основанные на параметрических моделях формы, могут быть далее разделены на локальные методы [12-14] и глобальные методы [15-17] в соответствии с их моделями внешнего вида; непараметрические методы могут быть далее разделены на методы, основанные на выборке Примеры методов [18, 19], методов на основе графических моделей [20, 21], методов на основе каскадной регрессии [4, 22, 23] и методов на основе глубокого обучения [24-26]. Более подробное разделение см. в [27]. В настоящее время метод, основанный на глубоком обучении, является наиболее широко используемым и наиболее точным, поэтому в этой статье в основном изучается применение глубокого обучения для обнаружения ключевых точек лица.
В методе локализации ключевой точки лица есть пять методов ориентиров:
1) В 1995 году ASM Кутса (модель активной формы).
2) В 1998 году алгоритм Cootes AAM (Active Appearance Model).
3) В 2006 году алгоритм Ристиначче CLM (ограниченная локальная модель).
4) В 2010 году алгоритм каскадной регрессии Роллара.
5) В 2013 году компания Sun стала пионером в обнаружении ключевых точек лица в глубоком обучении и впервые применила CNN для определения местоположения ключевых точек лица.
С точки зрения количественной оценки основным эталоном измерения в настоящее время является отклонение между положением ключевой точки, полученным алгоритмом, и положением реальной ключевой точки. При оценке отклонения, поскольку фактический размер разных изображений лиц неизбежно будет отличаться, для сравнения производительности алгоритма в одном и том же масштабе необходимо принять определенную стратегию нормализации данных. Текущий основной метод заключается в стандартизации размера лица на основе расстояния между глазами, а именно:
, где молекулапредставляет евклидово расстояние между расчетным значением и истинным значением, знаменательУказывает бинокулярное расстояние, то есть евклидово расстояние между центрами двух глаз. Существует также использование диагонали ограничивающей рамки в качестве коэффициента нормализации для оценки смещения, например [20].
Традиционная база данных обнаружения ключевых точек лица представляет собой базу данных, собранную в помещении, такую как Multi-pie, Feret, Frgc, AR, BioID и другие базы данных лиц. На этом этапе база данных обнаружения ключевых точек лица обычно представляет собой базу данных, собранную в сложной среде. База данных лиц LFPW содержит 1132 тренировочных изображения лица и 300 тестовых изображений лица, большинство из которых являются фронтальными изображениями лица, и каждое лицо отмечено 29 ключевыми точками. База данных лиц AFLW содержит 25993 изображения лиц, собранных с Flickr, каждое лицо помечено 21 ключевой точкой. База данных лиц COFW содержит 845 изображений лиц в обучающем наборе базы данных лиц LFPW и 500 других изображений лиц с окклюзией, в то время как тестовый набор составляет 507 изображений лиц с тяжелой окклюзией (включая изменения позы и выражения), каждый человек Калибровка лица с 29 ключевые точки. База данных лиц MVFW представляет собой набор данных о лицах с несколькими представлениями, включающий 2050 тренировочных изображений лиц и 450 тестовых изображений лиц, каждое лицо помечено 68 ключевыми точками. База данных лиц OCFW содержит 2951 тренировочное изображение лица (все лица без окклюзии) и 1246 тестовых изображений лица (все лица с окклюзией), и каждое лицо помечено 68 ключевыми точками.
2. Метод обнаружения ключевой точки лица
Методы обнаружения характерных точек лица можно разделить на следующие две категории в зависимости от того, требуется ли параметризованная модель: методы, основанные на параметрических моделях форм, и методы, основанные на непараметрических моделях форм. В настоящее время наиболее часто используемые методы глубокого обучения основаны на непараметрических моделях формы, поэтому в этой статье обсуждаются методы глубокого обучения. Однако, чтобы лучше понять развитие и историю ключевых точек лица, в этой статье также кратко представлены наиболее классические методы обнаружения ключевых точек лица: ASM и AAM.
2.1 ASM (Active Shape Models)
ASM (Active Shape Model)[1] — это классический алгоритм обнаружения ключевых точек лица, предложенный Cootes в 1995 г. Модель активной формы абстрагирует целевой объект с помощью модели формы ASM — это модель распределения точек, основанная на модели распределения точек. , PDM) алгоритм. В PDM геометрические формы объектов схожей формы, таких как лица, руки, сердца, легкие и т. д., могут быть представлены путем объединения координат нескольких ориентиров в последовательности для формирования вектора формы. Алгоритму ASM необходимо откалибровать обучающий набор методом ручной калибровки, получить модель формы после обучения, а затем реализовать сопоставление конкретных объектов посредством сопоставления ключевых точек.
ASM в основном делится на два этапа: первый этап: обучение. Во-первых, постройте модель формы: соберите n обучающих выборок (n = 400); вручную пометьте ключевые точки лица; вставьте координаты ключевых точек в обучающем наборе в векторы признаков; нормализуйте и выровняйте форму (выравнивание использует метод Прокруста). method) ; Выполните обработку PCA на выровненных элементах формы. Затем для каждой ключевой точки строятся локальные признаки. Цель состоит в том, чтобы каждая ключевая точка могла найти новую позицию во время каждой итерации процесса поиска. Градиентные элементы обычно используются для локальных элементов, чтобы предотвратить изменение освещения. Некоторые методы производят извлечение вдоль нормали к краю, а некоторые методы извлекают в прямоугольной области рядом с ключевой точкой. Шаг 2: Поиск. Сначала: вычислите положение глаз (или глаз и рта), внесите простые изменения масштаба и поворота и выровняйте лицо; затем выполните поиск вокруг выровненных точек, чтобы они соответствовали каждой локальной ключевой точке (часто с использованием расстояния Махаланобиса). форма; затем используйте усредненную грань (модель формы), чтобы скорректировать результат сопоставления; итерации до сходимости.
Преимущества алгоритма ASM заключаются в том, что модель проста и понятна, структура ясна и ясна, ее легко понять и применять, и она имеет сильные ограничения на форму контура, но ее метод позиционирования ключевой точки, который аналогичен полному перебору, в определенной степени ограничивает его вычислительную эффективность.
2.2 AAM (активные модели внешнего вида)
В 1998 году Кутес усовершенствовал ASM, не только используя ограничения формы, но и добавив текстурные особенности всей области лица, и предложил алгоритм AAM [2]. Как и ASM, AAM в основном делится на два этапа: этап построения модели и этап сопоставления модели. Этап построения модели включает в себя построение модели формы и модели текстуры для обучающих выборок соответственно, а затем объединение двух моделей для формирования модели AAM.
2.3 СЛР (каскадная регрессия поз)
В 2010 году Доллар предложил CPR (каскадная регрессия позы, каскадная регрессия позы) [4].CPR постепенно уточняет указанное начальное значение прогноза с помощью серии регрессоров, каждый регрессор опирается на выходные данные предыдущего регрессора.Выполнение простых манипуляций с изображениями и вся система может автоматически учиться на обучающих примерах.
Целью обнаружения ключевых точек лица является оценка вектора
, где K представляет количество ключевых точек.Так как каждая ключевая точка имеет горизонтальные и вертикальные координаты, длина S равна 2K. Процесс обнаружения CPR показан на рисунке.Всего этапов T. На каждом этапе сначала выполняется извлечение признаков для получения, Здесь используются функции с индексом формы, а также могут использоваться искусственно созданные функции, такие как HOG, SIFT и т. д., или другие функции, основанные на обучении, а затем инкрементный ΔS (вектор обновления), добавить ΔS к S предыдущего Этап для получения новой S, чтобы окончательная S (форма) могла быть получена путем непрерывной итерации.
2.4 DCNN
В 2013 году Сан и др. [5] впервые применили CNN для обнаружения ключевых точек лица и предложили каскадную CNN (с тремя слоями) — DCNN (Deep Convolutional Network), которая относится к методу каскадной регрессии. Тщательно спроектировав каскадную сверточную нейронную сеть с тремя уровнями, автор не только решает проблему попадания в локальный оптимум из-за неправильной инициализации, но также получает более точное определение ключевых точек с помощью мощных возможностей CNN по извлечению признаков.
Как показано на рисунке, DCNN состоит из трех уровней. 1-й уровень состоит из 3 CNN, 2-й уровень состоит из 10 CNN (по две CNN на каждую ключевую точку), 3-й уровень также состоит из 10 CNN.
Уровень-1 разделен на 3 CNN, а именно F1 (Лицо 1), EN1 (Глаз, Нос), NM1 (Нос, Рот), размер ввода F1 составляет 39 * 39, и выводятся координаты 5 ключевых точек; входной размер EN1 — 39*31, выход — координаты 3 ключевых точек, входной размер NM11 — 39*31, выход — 3 ключевые точки. Выход Уровня-1 получается путем усреднения трех выходов CNN.
Уровень-2 состоит из 10 CNN, каждая с входным размером 15 * 15. Каждая пара образует пару.Пара CNN предсказывает ключевую точку, а результаты предсказания также усредняются.
Как и Уровень-2, Уровень-3 состоит из 10 CNN с входными размерами 15*15, каждая из которых образует пару. Уровни 2 и 3 точно настраивают грубое позиционирование, полученное с помощью Уровня 1, для получения точного позиционирования ключевой точки.
Причина, по которой уровень-1 имеет больший вход, чем уровень-2 и уровень-3, заключается в том, что автор считает, что относительное положение ограничивающей рамки может сильно различаться из-за детектора лица, а также изменения позы лица, что в конечном итоге приводит к разнообразие входных изображений, поэтому на уровне 1 должен требоваться достаточно большой размер входных данных. Еще одно различие между Уровнем 1, Уровнем 2 и Уровнем 3 заключается в том, что Уровень 1 использует Lcally Sharing Weights.Автор считает, что традиционное глобальное распределение веса заключается в том, чтобы учитывать, что определенная функция может появиться в любом месте изображения, поэтому глобальное принято разделение веса. Однако для изображений с фиксированной пространственной структурой, таких как лица, глобальное распределение веса не работает. Потому что глаза вверху, нос посередине, а рот внизу. Поэтому автор опирается на идеи из литературы [28] и принимает локальное распределение веса.Автор доказывает с помощью экспериментов, что локальное распределение веса приводит к повышению производительности сети.
DCNN принимает идею каскадной регрессии и постепенно получает точные положения ключевых точек от грубого к точному.Он не только проектирует трехуровневую каскадную сверточную нейронную сеть, но также вводит механизм локального распределения веса для улучшения производительности локализации сеть. Наконец, наилучшие результаты на тот момент были получены на наборах данных BioID и LFPW. Что касается скорости, он использует процессор с частотой 3,3 ГГц для обнаружения 5 ключевых точек изображения каждые 0,12 секунды.
2.5 DCNN для Face++
В 2013 году Face++ усовершенствовал модель DCNN и предложил алгоритм обнаружения ключевых точек лица от грубого до точного [6], который обеспечил высокоточное позиционирование 68 ключевых точек лица. Алгоритм делит ключевые точки лица на внутренние ключевые точки и контурные ключевые точки.Внутренние ключевые точки включают брови, глаза, нос и рот, всего 51 ключевая точка, а контурные ключевые точки включают 17 ключевых точек.
Для внутренних ключевых точек и внешних ключевых точек алгоритм использует две каскадные CNN для параллельного обнаружения ключевых точек, а структура сети показана на рисунке.
Для обнаружения внутренних 51 ключевых точек используется каскадная сеть из четырех уровней. Среди них основной функцией Уровня-1 является получение ограничительной рамки органов лица; выходом Уровня-2 является прогнозируемое положение 51 ключевой точки, которая играет роль в грубом позиционировании, а целью является инициализация Уровня. -3; Уровень-3 будет Позиционирование от грубого к точному осуществляется в соответствии с различными органами; ввод Уровня-4 состоит в том, чтобы повернуть вывод Уровня-3 до определенной степени и, наконец, вывести позиции 51 ключевой точки . Для внешних 17 ключевых точек для обнаружения используются только два уровня каскадных сетей. Уровень-1 имеет ту же функцию, что и внутреннее обнаружение ключевых точек, в основном для получения ограничительной рамки контура; Уровень-2 напрямую прогнозирует 17 ключевых точек, и нет процесса от грубого до точного позиционирования, потому что область ключевые точки контура большие, если добавить на уровне 3 и уровне 4, это займет больше времени. Последние 68 ключевых точек лица получаются путем наложения выходных данных двух каскадных CNN.
Основными инновационными моментами алгоритма являются следующие три пункта: (1) проблема позиционирования ключевых точек лица делится на внутренние ключевые точки и контурные ключевые точки для отдельного прогнозирования, что эффективно позволяет избежать проблемы несбалансированных потерь; (2) Обнаружение внутренних ключевых точек Часть, в отличие от DCNN, каждая ключевая точка использует две CNN для прогнозирования, но каждый орган использует для прогнозирования одну CNN, тем самым уменьшая объем вычислений; (3) По сравнению с DCNN, он не использует напрямую детектор лиц для возврата Результат используется в качестве входных данных, но добавляется слой обнаружения ограничивающей рамки (уровень 1), который может значительно повысить точность сети грубой локализации ключевых точек.
Версия DCNN для лица ++ использует сверточную нейронную сеть для обнаружения ключевых точек лица 68. Ввиду проблемы, связанной с тем, что детекторы лиц влияют на предыдущее обнаружение ключевых точек лица, автор разрабатывает сверточную нейронную сеть уровня 1 для дальнейшего извлечения. ограничивающая рамка лица, которая подходит для людей.Обнаружение ключевых точек лица позволило получить более точную информацию о положении лица и, наконец, в том же году выиграло лучший результат в 300-W Challenge.
2.6 TCDCN
В 2014 году Чжан и др. применили MTL (многозадачное обучение) для обнаружения ключевых точек и предложили TCDCN (глубокая сверточная сеть с ограничениями задач) [7]. Автор считает, что при выполнении задачи по обнаружению ключевых точек лица объединение некоторой вспомогательной информации может помочь лучше определить ключевые точки, такие как пол, носить ли очки, улыбаться ли, осанку лица. Автор сочетает обнаружение ключевых точек лица (5 ключевых точек) с четырьмя подзадачами: пол, носить ли очки, улыбаться ли и поза лица, чтобы сформировать многозадачную модель обучения.Каркас модели показан на рисунке.
Выход сети представляет собой изображение в градациях серого 40 * 40. После CNN, наконец, получается карта признаков 2 * 2 * 64, а затем полностью связанный слой со 100 нейронами используется для вывода окончательно извлеченных общих признаков. Эта функция является общей для всех задач: для задачи обнаружения ключевых точек используется модель линейной регрессии, для задачи классификации используется модель логистической регрессии.
В традиционном MLT важность каждой задачи постоянна, и ее целевое уравнение выглядит следующим образом:
в,Представление и весовая матрицаВход в функцию после умножения,представляет функцию потерь,является обычным термином. Видно, что важность каждой задачи t одинакова, но при многозадачном обучении сложность обучения для разных задач часто различна.Если используется один и тот же вес потерь, задача обучения будет трудно сходиться. В статье оптимизируются проблемы различных трудностей обучения при многозадачном обучении и предлагается целевая функция с весами:
Среди них первый элемент представляет функцию потерь основной задачи, то есть функцию потерь обнаружения ключевой точки лица, а второй элемент представляет функцию потерь других подзадач, гдеУказывает на важность задачи а. Для задачи обнаружения ключевой точки лица в этом документе объединены четыре подзадачи, а именно: пол, носить ли очки, улыбаться ли и осанка лица, целевая функция:
Среди них первый элемент представляет собой сумму квадратов ошибок, которая представляет собой функцию потерь ключевых точек лица, второй элемент представляет собой задачу классификации, и используется кросс-энтропийная ошибка, а третий элемент представляет собой обычный член. .
Нацелившись на другую проблему многозадачного обучения, скорость сходимости каждой задачи различна, в этой статье предлагается новый метод ранней остановки. Когда подзадача достигает максимальной производительности, она больше не помогает основной задаче, и задачу можно остановить. В статье приводится формула автоматической остановки подзадачи, следующая:
в,представляет собой ошибку обучения,представляет ошибку проверки,является порогом, первый член представляет тенденцию ошибки обучения, а второй член представляет собой отношение ошибки обобщения к ошибке обучения, когда произведение двух членов больше порога, задача останавливается.
TCDCN использует метод многозадачного обучения для обнаружения ключевых точек лица.Нацелившись на две основные проблемы многозадачного обучения в задаче обнаружения ключевых точек лица, сложность обучения для разных задач различна и скорость сходимости различных задач различна Новая целевая функция и стратегия ранней остановки улучшены, что приводит к лучшим результатам в наборах данных AFLW и AFW. В то же время, по сравнению с методом каскадной CNN, на процессоре Intel Core i5 для каскадной CNN требуется 0,12 с, а для TCDCN требуется всего 17 мс, что более чем в семь раз быстрее.
Ссылка на код: https://github.com/zhzhanp/TCDCN-face-alignment
2.7 MTCNN
В 2016 году Чжан и др. предложили многозадачные каскадные сверточные сети (MTCNN, многозадачные каскадные сверточные сети) [9] для одновременной работы с обнаружением лиц и локализацией ключевых точек лица. Автор считает, что часто существует потенциальная связь между двумя задачами обнаружения лица и обнаружения ключевых точек лица.Однако большинство методов не эффективно сочетают две задачи.Чтобы в полной мере использовать потенциальную связь между двумя задачами, A предлагается многозадачная каскадная структура обнаружения лиц, которая одновременно выполняет обнаружение лиц и обнаружение ключевых точек лица.
MTCNN содержит три каскадные многозадачные сверточные нейронные сети, а именно Сеть предложений (P-Net), Уточнить сеть (R-Net) и Сеть вывода (O-Net).Каждая многозадачная сверточная нейронная сеть имеет три задачи обучения: классификация лиц, регрессия ограничительной рамки и локализация ключевых точек. Структура сети представлена на рисунке:
MTCNN реализует распознавание лиц и локализацию ключевых точек в три этапа. Сначала окно-кандидат области лица и вектор регрессии ограничивающего прямоугольника получаются с помощью P-Net, и ограничивающий прямоугольник используется для регрессии, окно-кандидат калибруется, а затем сильно перекрывающиеся прямоугольники-кандидаты объединяются через не -максимальное подавление (NMS). Затем блок-кандидат, полученный P-Net, используется в качестве входных данных и входных данных для R-Net.R-Net также удаляет эти ложноположительные области с помощью регрессии ограничивающего прямоугольника и NMS для получения более точных блоков-кандидатов; наконец, используйте выходные данные O-Net. положения 5 ключевых точек.
В конкретном учебном процессе автор вносит соответствующие усовершенствования в метод расчета функции потерь многозадачного обучения. При многозадачном обучении, когда в сеть вводятся различные типы обучающих изображений, некоторые задачи не изучаются, поэтому соответствующие потери должны быть равны 0. Например, когда тренировочное изображение является фоном (без лица), потеря ограничивающей рамки и ключевых точек должна быть равна 0. Формула расчета приводится в документе для автоматического определения выбора потери.Формула:
в,Представляет важность задачи в P-Net и R-Net,
, В R-Net, поскольку необходимо выявить ключевые точки, соответственно повышается и важность задачи,.в качестве индикатора типа выборки.
Чтобы улучшить производительность сети, необходимо выбирать сложные образцы.Традиционный метод заключается в выборе путем изучения обученной модели.В этой статье предлагается онлайн-метод выбора, который может выбирать сложные образцы в процессе обучения. Метод состоит в том, чтобы сортировать потери каждой выборки в мини-партии, выбирать выборки, соответствующие первым 70% больших потерь, как сложные выборки и игнорировать 30% выборок во время обратного распространения, потому что 30% выборок не вносят большой вклад в обновление.
Экспериментальные результаты показывают, что MTCNN достигает наилучших результатов в наборах данных обнаружения лиц FDDB и WIDER FACE и наборе данных местоположения ключевых точек лица LFPW. С точки зрения времени работы, он может достигать 16 кадров в секунду с процессором 2,60 ГГц и 99 кадров в секунду с Nvidia Titan Black.
Код:
Matlab: https://github.com/kpzhang93/MTCNN_face_detection_alignment
Кафе: https://github.com/dlunion/mtcnn
Python: https://github.com/DuinoDu/mtcnn
2.8 TCNN (модифицированные сверточные нейронные сети)
В 2016 году Ву и др. изучили, какие особенности CNN узнала в задаче определения местоположения ключевой точки лица, и использовали GMM (модель гауссовской смеси, модель гауссовой смеси) для кластеризации функций разных слоев и обнаружили, что сеть выполняет иерархическую, от грубого к точному расположению признаков, чем глубже извлекаемый признак, тем больше он может отражать расположение ключевых точек лица. В ответ на это открытие была предложена TCNN (Tweaked Convolutional Neural Networks) [8], структура ее сети показана на рисунке:
На приведенном выше рисунке показан Vanilla CNN, который выполняет кластеризацию категории K для функций, полученных с помощью FC5, и делит обучающие изображения по категориям для обучения соответствующего FC6K. Во время тестирования изображение сначала проходит через Vanilla CNN для извлечения признаков, то есть вывода FC5. Функции, выдаваемые FC5, сравниваются с K центрами кластера, функции, выдаваемые FC5, делятся на соответствующие категории, а затем для соединения выбирается соответствующий FC6, и, наконец, получаются выходные данные.
Каков вывод автора из кластерного анализа характеристик среднего слоя Vanilla CNN? И как спроектировать TCNN с помощью кластерного анализа среднего уровня, чтобы получить вдохновение?
Автор выполняет кластерный анализ признаков каждого слоя в середине Vanilla CNN и подсчитывает степень изменения ключевых точек между слоями, как показано на рисунке:
Как видно из рисунка, признаки, выделенные в более глубоком слое, более компактны, поэтому признаки, выделенные в более глубоком слое, могут лучше отражать положение ключевых точек лица. Когда автор использует K = 64, усредненные выборки разделенных кластеров рисуются следующим образом:
Из рисунка видно, что образцы каждого кластера отражают определенную позу головы и даже проявляются различия в выражении и половой принадлежности. Следовательно, можно сделать вывод, что положения ключевых точек лица часто связаны с атрибутами лица. Поэтому, чтобы получить более точное позиционирование ключевых точек, автор использует изображения с аналогичными характеристиками для обучения соответствующих регрессоров и, наконец, получает наилучшие результаты на тот момент на наборах данных обнаружения ключевых точек лица AFLW, AFW и 300W.
2.9 DAN (сети глубокого выравнивания)
В 2017 году Ковальски и др. предложили новую каскадную глубокую нейронную сеть, DAN (Deep Alignment Network) [10].В прошлом вход каскадной нейронной сети был определенной частью изображения.Входом является вся картина . Когда сеть использует все изображение в качестве входных данных, DAN может эффективно преодолеть проблемы, вызванные позой головы и инициализацией, что приводит к лучшим результатам обнаружения. Причина, по которой DAN может принимать все изображение в качестве входных данных, заключается в том, что он добавляет тепловые карты ориентиров.Использование тепловых карт ориентиров является основным новшеством этой статьи. Базовая структура DAN показана на рисунке:
DAN состоит из нескольких этапов, каждый этап имеет три входа и один выход, вход — выпрямленное изображение, тепловая карта ключевых точек и карта признаков, сгенерированная полносвязным слоем, а выход — форма лица (Face Shape). Среди них роль CONNECTION LAYER заключается в выполнении ряда преобразований на выходе этого этапа для создания трех входов, необходимых для следующего этапа Конкретные операции показаны на следующем рисунке:
Начиная с первого этапа, на вход первого этапа поступают только исходное изображение и S0. Инициализация ключевых точек лица — S0, полученная путем усреднения всех ключевых точек, и первый этап выводит S1. Для второго этапа сначала S1 преобразуется СЛОЯМИ СОЕДИНЕНИЯ первого этапа, а тепловая карта H2, соответствующая преобразованным изображениям T2 (I) и S1, и выходные данные слоя fc1 первого этапа получаются соответственно.Эти три второй этап этап ввода. И так далее, пока последний этап не выдаст SN. В документе приведены карты T2(I), T2(S1) и признаков после первого этапа набора данных IBUG, как показано на рисунке:
Из рисунка видно, что «преобразование», которое необходимо сделать DAN, заключается в корректировке изображения, и первая строка данных особенно очевидна, поэтому DAN имеет хорошую адаптируемость к трансформации позы, которая может извлечь выгоду из этого «преобразования». ". Что касается того, какую «трансформацию» использует DAN, ее нужно изучить в коде.
Далее, давайте посмотрим, как St получается St-1 и CNN на этом этапе.Давайте сначала посмотрим на формулу расчета St:
вЕго выдает CNN, а структура сети CNN на каждом этапе показана на рисунке:
Вход CNN "преобразован" -операции, поэтому результирующее смещениеявляется смещением в новом пространстве признаков и должно подвергаться обратному преобразованию после смещенияВосстановить исходное пространство. Упомянутое здесь новое функциональное пространство может быть «исправлением» изображения, чтобы сеть могла лучше обрабатывать изображение.
Расчет тепловой карты ключевой точки представляет собой затухание в центре.Значение в ключевой точке является наибольшим, и чем дальше значение, тем меньше значение.Формула выглядит следующим образом:
Зачем вам нужно создавать карту объектов из слоя fc1? В статье упоминается, что «такое соединение позволяет передать любую информацию, полученную на предыдущем этапе, на последующий этап».
В целом, DAN — это метод обнаружения ключевых точек с каскадной идеей.Вводя тепловую карту ключевых точек в качестве дополнения, DAN может извлекать функции из всего изображения для получения более точного позиционирования.
Код:
Теано: https://github.com/MarekKowalski/DeepAlignmentNetwork
TensorFlow: https://github.com/kpzhang93/MTCNN_face_detection_alignment
3. Заключение
Появление технологии глубокого обучения эффективно способствовало слиянию информации разного масштаба и разных задач, а комбинация информации превратилась из плоского в трехмерный метод, который имеет выдающееся практическое значение для разработки извлечения ключевых точек лица. модели. По этой причине в этой статье рассматриваются современные методы глубокого обучения, обычно используемые в задачах обнаружения ключевых точек лица.
Хотя метод глубокого обучения добился больших успехов в задаче обнаружения ключевых точек лица, производительность алгоритма постоянно улучшалась, а требования практических приложений становятся все ближе и ближе. Однако исследования по этой задаче далеки от завершения, и есть еще ряд ключевых проблем, требующих безотлагательного решения. Вот три пункта:
(1) Отсутствие единой системы интеграции методов. В последние годы, с применением глубокого обучения, регрессионного анализа и других технологий, модели методов технологии обнаружения ключевых точек лица стали более распространенными. Однако, чтобы полностью решить проблему обнаружения ключевых точек, необходимо создать унифицированную и всеобъемлющую структуру метода. Поэтому, если мы хотим добиться высокоточного выделения характерных точек лица в любой ситуации, нам необходимо создать всеобъемлющую структуру методов, которая объединяет лучшие методы для различных ситуаций.
(2) Отсутствие лаконичных моделей. Методы, появившиеся в последние годы, становятся все более сложными, со все большим количеством параметров, все более сложной информацией и технологиями, которые необходимо использовать комплексно. Следуя принципу бритвы Оккама, слишком сложная модель обязательно будет трудной для того, чтобы стать оптимальным решением. Текущие исследования по извлечению ключевых точек лица срочно нуждаются в разработке разумных идей, которые могут решить проблему с помощью простых и понятных моделей и методов.
(3) Изменяемые позы лица и окклюзии. Поза и окклюзия - классические проблемы, с которыми сталкивается распознавание ключевых точек лица. В последние годы появилось много идей и методов для решения этих двух проблем. Однако в практических приложениях, особенно в условиях низкого качества изображения в реальном времени, для эти две проблемы.Обработка таких проблем все еще неудовлетворительна. Особенно, когда отношение меняется быстро и резко, а коэффициент окклюзии велик, точность существующих методов все еще далека от требований практического применения, и необходимы дальнейшие исследования и усовершенствования.
В этой статье проводится обзор методов глубокого обучения в последних методах обнаружения ключевых точек лица. В этом документе подробно описывается задача обнаружения ключевых точек лица и проводится более глубокое исследование репрезентативных моделей сетей глубокого обучения, от идей дизайна модели до структуры модели. С точки зрения сложных проблем, с которыми столкнулись, и базовых знаний, необходимых для проведения соответствующих исследований, эта статья также дает некоторые идеи. связанных исследований.
использованная литература
[1] T.F. Cootes, C.J. Taylor, D.H. Cooper, et al. Active Shape Models-Their Training and Application[J]. Computer Vision and Image Understanding, 1995, 61(1):38-59.
[2] Г. Дж. Эдвардс, Т. Ф. Кутс, С. Дж. Тейлор, Распознавание лиц с использованием активных моделей внешности [J], Computer Vision — Eccv’, 1998, 1407(6):581-595.
[3] Cootes T F, Edwards G J, Taylor C J. Active appearance models[C]// European Conference on Computer Vision. Springer Berlin Heidelberg, 1998:484-498.
[4] Доллар П., Велиндер П., Перона П. Каскадная регрессия поз [J], IEEE, 2010, 238(6):1078-1085.
[5] Sun Y, Wang X, Tang X. Deep Convolutional Network Cascade for Facial Point Detection[C]// Computer Vision and Pattern Recognition. IEEE, 2013:3476-3483.
[6] Zhou E, Fan H, Cao Z, et al. Extensive Facial Landmark Localization with Coarse-to-Fine Convolutional Network Cascade[C]// IEEE International Conference on Computer Vision Workshops. IEEE, 2014:386-391.
[7] Zhang Z, Luo P, Chen C L, et al. Facial Landmark Detection by Deep Multi-task Learning[C]// European Conference on Computer Vision. 2014:94-108.
[8] Wu Y, Hassner T. Facial Landmark Detection with Tweaked Convolutional Neural Networks[J]. Computer Science, 2015.
[9] Zhang K, Zhang Z, Li Z, et al. Joint Face Detection and Alignment Using Multitask Cascaded Convolutional Networks[J]. IEEE Signal Processing Letters, 2016, 23(10):1499-1503.
[10] Kowalski M, Naruniec J, Trzcinski T. Deep Alignment Network: A Convolutional Neural Network for Robust Face Alignment[J]. 2017:2034-2043.
[11] Cristinacce D, Cootes T F. Feature Detection and Tracking with Constrained Local Models[C]// British Machine Vision Conference 2006, Edinburgh, Uk, September. DBLP, 2006:929-938.
[12] Lucey S, Wang Y, Cox M, et al. Efficient Constrained Local Model Fitting for Non-Rigid Face Alignment[J]. Image & Vision Computing, 2009, 27(12):1804.
[13] Wang Y, Lucey S, Cohn J F. Enforcing convexity for improved alignment with constrained local models[C]// IEEE Conference on Computer Vision & Pattern Recognition. Proc IEEE Comput Soc Conf Comput Vis Pattern Recognit, 2008:1.
[14] Saragih J M, Lucey S, Cohn J F. Deformable Model Fitting by Regularized Landmark Mean-Shift[M]. Kluwer Academic Publishers, 2011.
[15] Papandreou G, Maragos P. Adaptive and constrained algorithms for inverse compositional Active Appearance Model fitting[C]// Computer Vision and Pattern Recognition, 2008. CVPR 2008. IEEE Conference on. IEEE, 2014:1-8.
[16] Matthews I, Baker S. Active Appearance Models Revisited[J]. International Journal of Computer Vision, 2004, 60(2):135-164.
[17] Amberg B, Blake A, Vetter T. On compositional Image Alignment, with an application to Active Appearance Models[C]// Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on. IEEE, 2009:1714-1721.
[18] Smith B M, Zhang L, Brandt J, et al. Exemplar-Based Face Parsing[C]// Computer Vision and Pattern Recognition. IEEE, 2013:3484-3491.
[19] Zhou F, Brandt J, Lin Z. Exemplar-Based Graph Matching for Robust Facial Landmark Localization[C]// IEEE International Conference on Computer Vision. IEEE Computer Society, 2013:1025-1032.
[20] Coughlan J M, Ferreira S J. Finding Deformable Shapes Using Loopy Belief Propagation[C]// European Conference on Computer Vision. Springer-Verlag, 2002:453-468.
[21] Liang L, Wen F, Xu Y Q, et al. Accurate Face Alignment using Shape Constrained Markov Network[C]// IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE Computer Society, 2006:1313-1319.
[22] Wei Y. Face alignment by Explicit Shape Regression[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE Computer Society, 2012:2887-2894.
[23] Xiong X, Torre F D L. Supervised Descent Method and Its Applications to Face Alignment[C]// Computer Vision and Pattern Recognition. IEEE, 2013:532-539.
[24] Tang X, Wang X, Luo P. Hierarchical face parsing via deep learning[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE Computer Society, 2012:2480-2487.
[25] Wu Y, Wang Z, Ji Q. Facial Feature Tracking Under Varying Facial Expressions and Face Poses Based on Restricted Boltzmann Machines[C]// Computer Vision and Pattern Recognition. IEEE, 2013:3452-3459.
[26] Zhang J, Shan S, Kan M, et al. Coarse-to-Fine Auto-Encoder Networks (CFAN) for Real-Time Face Alignment[C]// European Conference on Computer Vision. Springer, Cham, 2014:1-16.
[27] Wang N, Gao X, Tao D, et al. Facial Feature Point Detection: A Comprehensive Survey[J]. Neurocomputing, 2017.
[28] Learnedmiller E, Lee H, Huang G B. Learning hierarchical representations for face verification with convolutional deep belief networks[C]// Computer Vision and Pattern Recognition. IEEE, 2012:2518-2525.
Исходная ссылка: https://www.analyticsvidhya.com/blog/2017/12/fundamentals-of-deep-learning-introduction-to-lstm/
представление о себе:
Ю Тинсонг, студент третьего курса Технологического университета Гуандун, направление исследований: глубокое обучение, обнаружение целей, классификация изображений.
Эта статья посвящена сердцу машины,Для перепечатки, пожалуйста, свяжитесь с этим официальным аккаунтом для авторизации.