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

Популярная механика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. Накладываем на изображение маску фиксированного размера (правильно она называется ядром свертки), перемножаем яркость каждого пикселя изображения на значения яркости в маске. Находим среднее значение для всех пикселей в «окошке» и записываем его в одну ячейку следующего уровня.

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

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

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

Водородная кругосветка Водородная кругосветка

Кругосветное путешествие катамарана Energy Observer

Популярная механика
12 новогодних конфликтов и способы их избежать 12 новогодних конфликтов и способы их избежать

Почему-то именно перед праздниками мы ссоримся особенно часто

Домашний Очаг
Сверх человек: бета-версия Сверх человек: бета-версия

Биохакеры пытаются редактировать гены при помощи собственных изобретений

Esquire
Фантастические твари и где они обитают Фантастические твари и где они обитают

Главный аниматор «Звездных войн» рассказывает, как придумал свинобегемота

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

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

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

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

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

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

Популярная механика
«Мне удалось невозможное: я справилась с болезнью, которую считают неизлечимой» «Мне удалось невозможное: я справилась с болезнью, которую считают неизлечимой»

Она доказала: если мечтаешь жить полной жизнью, возможно всё

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

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

Популярная механика
Она сама пришла Она сама пришла

Как понять, где заканчивается плохое настроение и начинается депрессия

Cosmopolitan
8 неловких вопросов про «это», которые стыдно задать 8 неловких вопросов про «это», которые стыдно задать

Самые частые вопросы на деликатную тему и откровенные ответы на них

Лиза
Звезда эфира Звезда эфира

Крупнейшие компании мира внедряют в свою работу распределенную систему Ethereum

Популярная механика
Живые огни Живые огни

К растительным настольным лампам и деревьям-фонарям ведет несколько путей

Популярная механика
Сон из избы Сон из избы

Что делать, если жить с мужчиной нравится, а спать в одной кровати — неудобно?

Добрые советы
Золото Альбертины Золото Альбертины

Интервью с директором венского музея Альбертина

СНОБ
Пропаганда без оргазма Пропаганда без оргазма

Пропагандистское кино в современной России не выполняет своей главной функции

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

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

СНОБ
Огненный пульс Огненный пульс

Летательные аппараты с пульсирующим воздушно-реактивным двигателем

Популярная механика
Peugeot 3008 Peugeot 3008

Во что в итоге вылились все фокусы 3008-го со временем

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

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

СНОБ
Неадекватные люди Неадекватные люди

Как выжить с неадекватными коллегами

Psychologies
Планшетные дети Планшетные дети

Что делать, если ребенок не выпускает гаджет из рук

Лиза
Алина Ланина: У Бога на все свои планы Алина Ланина: У Бога на все свои планы

Я хотела бы так — один раз и на всю жизнь

Караван историй
Хроника одного переворота Хроника одного переворота

Захватить власть в стране осенью 1917 года мог кто угодно

Дилетант
Бомба для бессмертного Бомба для бессмертного

Что не так с Лениным?

СНОБ
Мимика письма Мимика письма

Как изменили язык смайлики и эмодзи

Огонёк
Несбывшаяся кадриль Несбывшаяся кадриль

Каменный особняк и судьбы двух необыкновенных женщин, посвятивших жизнь танцу

Караван историй
В надежных руках В надежных руках

Театральную программу фестиваль «Дягилев PS» открывает спектаклем «Коко Шанель»

Vogue
Как я на месяц взяла всё в свои руки Как я на месяц взяла всё в свои руки

Мужчины говорят, что ценят женскую инициативу и предпочитают смелых девушек

Cosmopolitan
Нелишняя копеечка Нелишняя копеечка

Как улучшить свое материальное положение?

Лиза
Открыть в приложении