В этой статье мы простым и понятным образом рассмотрим принципы и процессы, лежащие в основе распознавания компьютерами человеческих лиц.
Какие принципы лежат в основе распознавания лиц?
Наверняка в детстве вы хотя бы раз играли в игру, где нужно было нарисовать человеческое лицо. В такой игре сначала вы выбираете форму лица, затем по очереди выбираете прическу, глаза, нос и рот и размещаете их на лице. Переключаясь между различными прическами, глазами, носами и ртами, вы можете создать желаемое лицо. Способ распознавания и сравнения лиц компьютерами мало чем отличается от этого. Компьютеры идентифицируют и хранят черты лица; когда вводится новая фотография лица, они сравнивают ее с сохраненными чертами, чтобы определить, кто этот человек.
Недавним примером легкодоступной технологии распознавания лиц является приложение для распознавания лиц. Эти приложения предварительно извлекают и сохраняют ключевые черты лица — такие как контуры лица, глаза, нос и рот — из фотографий знаменитостей. Позже, когда лицо человека запечатлено камерой, приложение извлекает черты лица таким же образом и сравнивает их с сохраненными чертами лица знаменитостей, чтобы идентифицировать и отобразить человека, наиболее точно соответствующего их характеристикам.
Как компьютер распознает лицо?
Теперь давайте рассмотрим процесс распознавания лиц на компьютере. Распознавание лиц состоит из четырех основных этапов: ввод данных, обнаружение лица, извлечение признаков и сравнение.
На этапе ввода один кадр с фотографии или видео передается на компьютер через устройство ввода. Как правило, чем выше разрешение устройства ввода и чем выше частота кадров в секунду (FPS), тем точнее можно распознать лица. Этот принцип аналогичен тому, как человек с хорошим зрением может точнее распознать лицо человека, стоящего на расстоянии.
На этапе обнаружения лица система сначала проверяет, присутствует ли лицо на входном фото или видео. Для этого она идентифицирует контур лица и ключевые черты, такие как глаза, нос и рот. Хотя в настоящее время используются различные методы обнаружения лиц, здесь мы сосредоточимся на наиболее распространенном методе обнаружения, подобном методу Хаара.
Метод обнаружения, подобный методу Хаара, использует вейвлеты Хаара. Вейвлет — это простой прямоугольный шаблон, состоящий из черных и белых областей. Эти черно-белые области используются для идентификации участков изображения, где наблюдаются различия в яркости. Применяя вейвлеты различных размеров и форм ко всему входному изображению или видео, а затем сохраняя только те места, где разница в яркости между черными и белыми областями значительна, система может эффективно обнаруживать контур лица и ключевые черты лица, такие как глаза, нос, рот и брови. Кроме того, этот процесс также позволяет извлекать информацию о положении черт лица.
Например, при извлечении информации о глазах черные области вейвлета располагаются таким образом, чтобы соответствовать относительно темным областям — таким как зрачок, — в то время как белые области соответствуют светлым областям, таким как кожа. Используя эти различия в яркости, можно эффективно определить положение и форму глаз.
Как извлекаются черты лица?
После завершения этапа распознавания лиц система определяет, следует ли переходить к этапу извлечения признаков.
На этапе извлечения признаков лица используются лицевые характеристики, выявленные на этапе обнаружения лиц. В отличие от этапа обнаружения лиц, этот процесс включает этап предварительной обработки. Поскольку угол поворота, размер и интенсивность освещения лиц различаются на каждой фотографии или видео, выполняется процесс нормализации для их максимальной стандартизации. Кроме того, цветные фотографии или видео могут быть преобразованы в черно-белые изображения по мере необходимости.
Например, исходное фото преобразуется в оттенки серого, затем вырезается и изменяется до одинакового размера только область лица, и выполняется выравнивание гистограммы для коррекции яркости. Используя информацию о положении лицевых компонентов, полученную на этапе обнаружения лица, из фотографий или видео, прошедших эту предварительную обработку, извлекаются лицевые признаки.
Как используются извлеченные черты лица?
На этапе сравнения информация об извлеченных компонентах лица либо сохраняется в базе данных (БД), либо сравнивается с существующими данными о лице для определения наилучшего соответствия.
Мы рассмотрели процесс компьютерного распознавания лиц. Всего несколько десятилетий назад идея о том, что компьютер сможет различать людей, казалась технологией, далекой от реальности. Однако благодаря быстрому развитию компьютерного оборудования, программного обеспечения и технологий искусственного интеллекта, распознавание лиц сегодня широко используется в различных областях, включая смартфоны и ноутбуки, а также системы контроля доступа, финансовые услуги и безопасность в аэропортах. Сегодня технология, позволяющая компьютерам распознавать человеческие лица, перестала быть чем-то из будущего и стала технологией, органично интегрированной в нашу повседневную жизнь.