Алгоритмы распознавания лиц понемногу превращаются во всевидящее око

Популярная механикаHi-Tech

На лице написано

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

Текст: Александр Ершов, Роман Фишман

0:00 /
786.027

Алгоритмы (технологии)

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

Найти

Попытки научить компьютер находить лицо на фотографиях проводились еще с начала 1970-х годов. Было испробовано множество подходов, но важнейший прорыв произошел существенно позднее – с созданием в 2001 году Полом Виолой и Майклом Джонсом метода каскадного бустинга, то есть цепочки слабых классификаторов. Хотя сейчас есть и более хитрые алгоритмы, можно поспорить, что и в вашем сотовом телефоне, и в фотоаппарате работает именно старый добрый Виола – Джонс. Все дело в замечательной быстроте и надежности: даже в далеком 2001 году средний компьютер с помощью этого метода мог обрабатывать по 15 снимков в секунду. Сегодня эффективность алгоритма удовлетворяет всем разумным требованиям. Главное, что нужно знать об этом методе, – он устроен удивительно просто. Вы даже не поверите насколько.

Алгоритмы распознают образы

Почему это работает? Посмотрите на признак [1]. Почти на всех фотографиях область глаз всегда немного темнее области непосредственно ниже. Посмотрите на признак [2]: светлая область посередине соответствует переносице, расположенной между темными глазами. На первый взгляд черно-белые маски совсем не похожи на лица, но при всей своей примитивности они имеют высокую обобщающую силу.

Шаг 1. Убираем цвет и превращаем изображение в матрицу яркости.
Шаг 2. Накладываем на нее одну из квадратных масок – они называются признаками Хаара. Проходимся с ней по всему изображению, меняя положение и размер.
Шаг 3. Складываем цифровые значения яркости из тех ячеек матрицы, которые попали под белую часть маски, и вычитаем из них те значения, что попали под черную часть. Если хотя бы в одном из случаев разность белых и черных областей оказалась выше определенного порога, берем эту область изображения в дальнейшую работу. Если нет – забываем про нее, здесь лица нет.
Шаг 4. Повторяем с шага 2 уже с новой маской – но только в той области изображения, которая прошла первое испытание.

Почему так быстро? В описанном алгоритме не отмечен один важный момент. Чтобы вычесть яркость одной части изображения из другой, понадобилось бы складывать яркость каждого пикселя, а их может быть много. Поэтому на самом деле перед наложением маски матрица переводится в интегральное представление: значения в матрице яркости заранее складываются таким образом, чтобы интегральную яркость прямоугольника можно было получить сложением всего четырех чисел.

Как собрать каскад? Хотя каждый этап наложения маски дает очень большую ошибку (реальная точность ненамного превышает 50%), сила алгоритма – в каскадной организации процесса. Это позволяет быстро выкидывать из анализа области, где лица точно нет, и тратить усилия только на те области, которые могут дать результат. Такой принцип сборки слабых классификаторов в последовательности называется бустингом (подробнее о нем можно прочитать в октябрьском номере «ПМ»). Общий принцип такой: даже большие ошибки, будучи перемножены друг на друга, станут невелики.

Упростить

Найти особенности лица, которые позволили бы идентифицировать его владельца, означает свести реальность к формуле. Речь идет об упрощении, причем весьма радикальном. Например, различных комбинаций пикселей даже на миниатюрном фото 64 × 64 пикселя может быть огромное количество – (28)64 × 64 = 232768 штук. При этом для того, чтобы пронумеровать каждого из 7,6 млрд людей на Земле, хватило бы всего 33 бита. Переходя от одной цифры к другой, нужно выкинуть весь посторонний шум, но сохранить важнейшие индивидуальные особенности. Специалисты по статистике, хорошо знакомые с такими задачами, разработали множество инструментов упрощения данных. Например, метод главных компонент, который и заложил основу идентификации лиц. Впрочем, в последнее время сверточные нейросети оставили старые методы далеко позади. Их строение довольно своеобразно, но, по сути, это тоже метод упрощения: его задача – свести конкретное изображение к набору особенностей.

Шаг 1. Накладываем на изображение маску фиксированного размера (правильно она называется ядром свертки), перемножаем яркость каждого пикселя изображения на значения яркости в маске. Находим среднее значение для всех пикселей в «окошке» и записываем его в одну ячейку следующего уровня.

Авторизуйтесь, чтобы продолжить чтение. Это быстро и бесплатно.

Регистрируясь, я принимаю условия использования

Рекомендуемые статьи

Главный дровосек планеты Главный дровосек планеты

Победы, поражения и скитания Джейсона Виньярда, короля топора и пилы

Популярная механика
Мастер Йода Мастер Йода

Правила жизни Мастера Йоды

Esquire
Летающий автомобиль Атаманова Летающий автомобиль Атаманова

Пятиместный автомобиль, первый полет которого планируется уже в сентябре

Популярная механика
Аж вся светится Аж вся светится

Лукерья Ильяшенко похожа на нас — фотографирует котов и борется с комплексами

Glamour
Люди на пределе Люди на пределе

Возможности нашего собственного, среднестатистического тела

Вокруг света
Письмо редактора Письмо редактора

Главный редактор – об исполнении желаний

Cosmopolitan
Полет бумеранга Полет бумеранга

Гибрид самолета, вертолета, конвертоплана и автожира

Популярная механика
HTC Vive: система профессионалов HTC Vive: система профессионалов

Шлем виртуальной реальности HTC Vive во всех подробностях

CHIP
Лыжники с небес Лыжники с небес

Самолеты на лыжах, пожалуй, еще большая экзотика, чем гидросамолеты

Популярная механика
Жили и жили Жили и жили

Век революции в портретах человека, дома, города

Русский репортер
Скажи мне, кто твой друг… Скажи мне, кто твой друг…

На съемках «Друзей» Энистон испугалась жеребца, а Швиммер организовал забастовку

StarHit
«Просто расслабься!» Почему это важно и как этому научиться «Просто расслабься!» Почему это важно и как этому научиться

Мы отлично знаем, как напрячь тело: об этом рассказывают сотни пособий по накачиванию мышц. Но как запустить обратный процесс – расслабление, от которого зависит координация, гибкость, сила и здоровье?

Psychologies
Пока не было света Пока не было света

Предыстория солнца и солнечной системы

Популярная механика
Когда работа в радость Когда работа в радость

Кто получает больше удовольствия от работы – секретарь или топ-менеджер?

Cosmopolitan
Выйти из сумрака Выйти из сумрака

По оценке ВОЗ, от депрессии страдают более 300 млн человек во всем мире

Добрые советы
Дело о пропеллере Дело о пропеллере

Героическая история летчика — с точки зрения его адвоката Добровинского

Tatler
Арктический бурлак Арктический бурлак

«Бурлак» – грузовик, которому нипочем глубокий снег, лед, вода, болота

Популярная механика
Карнавала не будет Карнавала не будет

Алексей Яблоков предлагает устроить карнавал по случаю столетия революции

GQ
Полина Филоненко: Привычка взрослеть Полина Филоненко: Привычка взрослеть

Я поняла: хуже уже не будет. Вот она, моя финальная точка отсчета

Караван историй
Теннисистка Светлана Кузнецова: Я командный игрок и могла бы отлично играть в футбол Теннисистка Светлана Кузнецова: Я командный игрок и могла бы отлично играть в футбол

Светлана Кузнецова — о том, какие кошмары снятся спортсменам

СНОБ
Нашла занятие Нашла занятие

Их дело выросло из хобби и приносит сплошное удовольствие

Cosmopolitan
«У меня нет друзей, никто не любит странных». Как живут с биполярным расстройством «У меня нет друзей, никто не любит странных». Как живут с биполярным расстройством

Люди с биполярным расстройством рассказали, как и из-за чего оно у них появилось

СНОБ
Дотракиец в Петербурге Дотракиец в Петербурге

Иногда метафора помогает найти ключ к трудному подростку

СНОБ
Эмма Клайн: Девочки Эмма Клайн: Девочки

Фрагмент «Девочек» Эммы Клайн

СНОБ
Выход есть. Как выживают люди, потерявшие все. Часть 3 Выход есть. Как выживают люди, потерявшие все. Часть 3

В мире много людей, которым нужна помощь

СНОБ
Карьера менеджера Карьера менеджера

Как Владислав Мартынов стал предпринимателем, инвестором и блокчейн-энтузиастом

РБК
Александр Петров: “У меня была любовь и война одновременно” Александр Петров: “У меня была любовь и война одновременно”

Интервью с артистом вертикального взлета Александром Петровым

Psychologies
Kickstarter: Oculus Rift Kickstarter: Oculus Rift

Как появился Oculus Rift и почему он стал популярен?

CHIP
Абсолютный эгоист Абсолютный эгоист

Тридцатипятилетний Дима Билан прыгает так же высоко, как и раньше

Cosmopolitan
Легче обнять Легче обнять

Интервью с Ксенией Раппопорт

Домашний Очаг
Открыть в приложении