Подтвердить что ты не робот

Как работают программы распознавания лиц?

Какой поток будет проходить через программу?

4b9b3361

Ответ 1

Очень грубо, этапы обработки:

  • Определение позиций лица
  • Нормализовать грани
  • Соберите функции для каждого обнаруженного лица
  • Передача функций в алгоритм машинного обучения

Шаг 1 обычно делается с использованием классического алгоритма обнаружения лица Viola & Jones. Это довольно быстро и надежно.

Лица, найденные на шаге 1, могут иметь разную яркость, контрастность и разные размеры. Для упрощения обработки все они масштабируются до одного и того же размера, и на этапе 2 компенсации компенсируются (например, с использованием выравнивания гистограммы).

Существует много подходов к шагу 3. Ранние детекторы лица пытались найти конкретные позиции (центр глаз, конец носа, конец губ и т.д.) и использовать геометрические расстояния и углы между ними как признаки распознавания, Из того, что я читал, эти подходы были очень быстрыми, но не настолько надежными.

Более поздний подход "Собственные функции" основан на том, что изображения граней могут быть аппроксимированы как линейная комбинация базовых изображений (найденных через PCA из большого набора обучающих образов). Линейные факторы в этом приближении могут быть использованы в качестве признаков. Этот подход также может применяться к частям лица (глаза, нос, рот) индивидуально. Он работает лучше всего, если поза между всеми изображениями одинакова. Если некоторые лица смотрят влево, другие смотрят вверх, это не сработает. Активные модели внешнего вида пытаются противостоять этому эффекту, обучая полную 3d-модель вместо плоских двухмерных изображений.

Шаг 4 относительно прост: у вас есть набор чисел для каждого лица и для изображений лица, полученных во время обучения, и вы хотите найти лицо тренировки, которое "наиболее похоже" на текущую контрольную поверхность. Это то, что делают алгоритмы машинного обучения. Я думаю, что наиболее распространенным алгоритмом является машина вектора поддержки (SVM). Другие варианты включают, например, искусственных нейронных сетей или k-ближайших соседей. Если функции хороши, выбор алгоритма ML не будет иметь большого значения.

Литература по теме:

  • Computer Vision - Алгоритмы приложений рассматривает обнаружение лиц, распознавание лиц и машинное обучение (среди многих других предметов). Это совершенно новое, так что оно охватывает последние исследования. Он также имеет большую библиографию.
  • Методы сопоставления шаблонов в Vision Vision рассматривает глубинные подходы к подходу к распознаванию лиц.
  • И вы можете найти множество статей исследования, используя google scientar.