Помните findface, который искал аккаунты в соцсетях по фото? его купили власти москвы

Что такое распознавание лиц?

Итак, в создании алгоритмов обнаружения лиц мы (люди) преуспели. А можно ли также распознавать, чьи это лица?

Распознавание лиц — это метод идентификации или подтверждения личности человека по его лицу. Существуют различные алгоритмы распознавания лиц, но их точность может различаться. Здесь мы собираемся описать распознавание лиц при помощи глубокого обучения.

Итак, давайте разберемся, как мы распознаем лица при помощи глубокого обучения. Для начала мы производим преобразование, или, иными словами, эмбеддинг (embedding), изображения лица в числовой вектор. Это также называется глубоким метрическим обучением.

Для облегчения понимания давайте разобьем весь процесс на три простых шага:

Обнаружение лиц

Наша первая задача — это обнаружение лиц на изображении или в видеопотоке. Далее, когда мы знаем точное местоположение или координаты лица, мы берем это лицо для дальнейшей обработки.

Извлечение признаков

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

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

Теперь давайте разберемся, как это помогает в распознавании лиц разных людей.

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

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

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

Здесь мы не будем заниматься обучением подобной сети. Это требует значительных вычислительных мощностей и большого объема размеченных данных. Вместо этого мы используем уже предобученную Дэвисом Кингом нейронную сеть. Она обучалась приблизительно на 3000000 изображений. Эта сеть выдает вектор длиной 128 чисел, который и определяет основные черты лица.

Познакомившись с принципами работы подобных сетей, давайте посмотрим, как мы будем использовать такую сеть для наших собственных данных.

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

Скачивайте книгу у нас в телеграм

Скачать

×

Сравнение лиц

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

Итак, мы передали в сеть две фотографии, одна Владимира Путина, другая Джорджа Буша. Для изображений Буша у нас были вектора (эмбеддинги), а для Путина ничего не было. Таким образом, когда мы сравнили эмбеддинг нового изображения Буша, он был близок с уже имеющимися векторам,и и мы распознали его. А вот изображений Путина в нашей базе не было, поэтому распознать его не удалось.

Описание технологии работы системы

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

Тот же сервис от Google считывает определенные параметры:

  • расстояние между глазами;
  • форму надбровных дуг;
  • положение и ширину носа;
  • форму подбородка и т.д.

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

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

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

Подобные системы идентификации сейчас широко применяются в самых различных сферах. Например:

К слову, стоит заметить, что использование разных маскирующих средств не слишком помогает в том, чтобы обойти систему. Достаточно 70% открытого лица, чтобы алгоритм опознал изображения. Очки или головной убор снижают точность не более, чем на 5%. Также некоторые китайские программы по поиску людей способны распознавать граждан даже в медицинских масках, которые там часто носят из-за смога.

В целом, системы используются в видеоаналитике в самых разных местах. Технология продолжает стремительно развиваться, что вызывает некоторые споры. Так, в некоторых штатах США ее запретили использовать полиции, т.к. это нарушает права граждан на частную жизнь.

Функционал Search4faces

На сайте составлены 4 отдельные базы данных:

  • по аватаркам «ВКонтакте»и «Одноклассниках» (более 280 миллионов результатов);
  • фотографии профиля в социальной сети «ВКонтакте» (1,1 миллиардов лиц);
  • аватарки из «TikTok» (84 млн результатов);
  • аватарки из «ClubHouse» (4,5 миллиона пользователей).

Фотографии из «Вконтакте» имеют самый большой процент успешных поисков – более 68%, наименьший – у «ТикТок» (10%). Фотографии пользователей «КлабХаус» не уточнены – по всей видимости, время сбора данных слишком мало для составления полноценной статистики.

Чтобы попробовать найти определённого человека по фотографии при помощи «Search4faces», необходимо выбрать один из указанных источников и загрузить фотографию (можно выбрать изображения из компьютера или галереи в телефоне или указать ссылку на фото). Разрешенный тип файлов – JPEG или PNG, размер изображения – не более 25 Мб.

Далее выставляются дополнительные критерии перед началом поиска – отображение результатов в одном окне, пол, возраст пользователя, страна и город предполагаемого проживания.

После загрузки фото в Search4faces, вы получите несколько результатов. Это может быть один id из соцсети, но разные аватарки, который периодически менял пользователь. В окне показывается процент совпадения, местоположение (если оно указано в соцсети) и ссылка на профиль и фото.

По заверениям создателей сайта Search4faces com, в будущем планируется расширить функционал сервиса, добавив туда поиск пользователей в Instagram.

Найти человека по фотографии через Google Images

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

  1. Для начала сохраните несколько фотографий на жесткий диск. Так будет удобнее осуществлять поиск. Можно их не сохранять, но в таком случае необходимо, чтобы под рукой были ссылки на эти фотографии.
  2. Перенесите одну из фотографий в строку поиска, либо вставьте туда URL фото. В итоге вы должны получить страницу поисковой выдачи с похожими фотографиями и ссылками.
  3. Среди найденных фото и ссылок на страницы постарайтесь найти похожих на вас людей, либо клонов.
  4. Если сделать этого не удалось, воспользуйтесь следующей фотографией. Желательно, чтобы фотографии были хорошего качества, с хорошим освещением.
  5. Если после поиска по нескольким фотографиям вам так и не удалось найти клонов, значит скорее всего их нет.

Это простое руководство позволит вам достаточно быстро найти двойников по фото. Вместо Google Images можно использовать и другие поисковики. Более того, рекомендуется использовать больше одного поисковика, чтобы получить наиболее удовлетворительные результаты поиска.

Где применяются технологии распознавания лиц?

Китай

#06

Во всем мире власти прикладывают усилия к повышению безопасности и жителей, ну то есть тотальной слежки. Например, в метрополитене Китайского Шэньчжэня запустили систему оплаты поездок при помощи такой технологии. Для ее реализации была запущена 5G-сеть. Теперь люди не предъявляют билет, а подходят к экрану у входа на станцию и сканируют свое лицо. Система узнает человека и автоматически списывает деньги с привязанного счета. К слову, после сканирования люди могут прочитать информацию о себе (пол, возраст, длительность пребывания в метро) и посмотреть фотографии.

#06 Китайский турникет. Конечно, для удобства придумал систему сканирования лиц. Они совсем, совсем не следят за вами. Честное китайское слово.

Россия

Подобная практика внедряется и в московском метро. В 2018 году начали тестировать систему биометрической идентификации. С помощью камер полиция уже задержала 9 человек, которые находились в розыске. Правда, она промолчала, сколько она таким образом отследила для своих «особенных» целей.

Британия

В британских тюрьмах Халл, Хамбер и Линдхолм в марте этого года внедрили систему распознавания лиц, чтобы бороться с передачей запрещенных предметов (наркотиков и мобильных телефонов). Даже сканирование отпечатков пальцев не позволяло выявлять частые контрабандные поставки. Сейчас используют технологию сканирования радужной оболочки глаза от американской компании Tascent. Дело в том, что рисунок радужной оболочки позволяет отобрать около 200 точек, с помощью этого метода обеспечивается высокая степень надежности аутентификации.

Япония

Японская компания NEC в феврале этого года запустила первые в мире банкоматы, которые выдают деньги посредством распознавания лиц.

Нидерланды

Технологии распознавания лиц также широко используются во внутренних и международных аэропортах. Например, аэропорт Амстердама Схипхол использует аппараты для распознавания лиц в процессе посадки пассажиров в самолет. Вместе с авиакомпанией Cathay Pacific технология пока применяется в тестовом режиме. То есть после прохождения регистрации на рейс человек сканирует паспорт, посадочный талон и лицо, а уже после этого проходит паспортный контроль. Перед посадкой лицо пассажира снова сканируется; если изображение соответствует фотографии из базы, система пропускает человека дальше. Такой алгоритм избавляет пассажиров от необходимости предъявлять паспорт и посадочный талон во время поездки, что ускоряет процедуру. 

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

Международная компания IBM в начале 2019 года выпустила базу данных, которая содержит 1 миллион фотографий лиц (взятых из сервиса Flickr). Это сделано для того, чтобы помочь разработчикам обучать биометрические системы. IBM посчитала, что использованные данные недостаточно разнообразные, поэтому снабдила фото метками с данными черепно-лицевых размеров, симметриями лица, обозначениями возраста и пола.

Во всём виноваты белые

Но даже у таких серьезных компаний случаются недочеты: используемая технология распознавания лиц лучше подходила для белых мужчин, нежели для женщин или людей других национальностей. По данным исследований Массачусетского технологического института, система IBM в 35% случаев не смогла распознать темнокожих женщин. В то же время доля ошибок при идентифицировании белых мужчин составляла не больше 1%.

Запрет на технологию

Оказывается, не все приветствуют использование технологии распознавания лиц. Например, Сан-Франциско уже стал первым городом в США, где полицейским запретили использовать такие системы (они применяли их, чтобы идентифицировать подозреваемых в толпе). Американцы считают, что это ограничивает их свободу передвижения и таким образом полиция вмешивается в их частную жизнь. В США технологию используют даже в некоторых торговых центрах, чтобы лучше понимать эмоции покупателей. Этот закон не распространяется только на международный аэропорт города и морской порт, так как они находятся под юрисдикцией федерального правительства. Но технологией распознавания лиц могут пользоваться частные лица (владельцы ресторанов, например).

Как банки используют распознавание лиц

Особенно важным и интересным может быть развитие технологии распознавания лиц в сфере банковских переводов. На днях российский банк «Открытие» представил собственное уникальное решение, разработанное под технологическим брендом Open Garage: перевод денег по фотографии в мобильном приложении «Открытие.Переводы». Вместо того чтобы вбивать номер карты или телефона, достаточно просто сфотографировать человека, которому нужно сделать перевод. Система распознавания лиц сравнит фото с эталонным (делается, когда банк выдает карту) и подскажет имя и фамилию. Останется только выбрать карту и ввести сумму

Что особенно важно, клиенты сторонних банков также могут использовать эту функцию для переводов клиентам «Открытия» — отправитель переводов может пользоваться картой любого российского банка

Мобильное приложение «Открытие. Переводы» можно скачать здесь.

Сценарии использования

Использовать FindFaceможно для разных целей:

  1. Идентификация клиентов. Составление альтернативных списков посетителей и клиентов. Сотрудники безопасности получают уведомление о нахождение клиента из «чёрного» списка на территории компании.
  2. Ускоренной обслуживание становится возможным при быстрой идентификации клиентов.
  3. Контроль доступа к рабочему месту с помощью лицевой биометрии.
  4. Общественная безопасность достигается с помощью считывания данных с более 1000 городских камер наблюдения.
  5. Предупреждение преступлений. Распознавание лиц поможет предотвратить действия криминального характера.
  6. Анализ клиентов и клиентоориентированность. Персонифицированная реклама и предложения, которые будут интересны определенной группе клиентов.

Расширения для браузера

Если вы часто пользуетесь поиском по фотографиям и хотите максимально сократить временные затраты, то для этого стоит использовать расширение для браузера. Это специальное программное обеспечение, которое устанавливается прямо в ваш браузер. Оно не требует дополнительной установки на вашем ПК или в смартфоне. Расширения работают постоянно, пока работает браузер. Большинство из расширений для поиска фотографий позволяют находить результаты всего лишь по одному клику. Это очень удобно, если вы постоянно сталкиваетесь с необходимостью проверки аккаунтов: всего лишь по одному клику можно узнать, встречается ли это изображение на других сайтах.

Однако есть у таких расширений и существенный недостаток: они могут нагружать систему. К сожалению, большинство расширений для браузера постоянно работают в фоновом режиме, что негативно сказывается на скорости работы компьютера. Если у вас не самая быстрая система, то такое расширение может “съесть” существенную часть оперативной памяти. Кроме того, некоторые расширения обладают достаточно скудным функционалом и часто поддерживают не больше одного поисковика. Это совсем не то, что требуется для надежной проверки.

PhotoTrackerLite

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

Поиск по картинке

Еще одно удобное расширение с очень оригинальным названием — “Поиск по картинке”. Оно отличается от конкурентов еще и тем, что поддерживает практически все известные поисковики, включая DuckDuckGo. Именно это расширение является одним из лидеров по установке среди русскоязычных пользователей. Большинство отмечает высокую скорость работы, а также возможность делать закладки на интересующих изображениях.

Кроме того, “Поиск по картинке” позволяет находить еще и информацию с архивированных сайтов. Даже если страница была удалена, остается вероятность, что она остается в кэше Гугла. Данное расширение гарантированно защитит вас от фейковых страниц, мошенников и злоумышленников.

Search by Image

Одно из самых простых расширений и самое популярное у западных пользователей тоже обладает оригинальным названием — Search by Image. Главное преимущество данного расширения — оно вообще не нагружает систему. Разработчики придумали уникальное решение, которое позволяет запускать расширение всего лишь один раз: при запуске браузера. Все остальное время оно находится в спящем режиме и используется только тогда, когда пользователь кликает по соответствующей кнопке.

Но есть и существенный недостаток: расширение предназначено для англоговорящей публики. А это значит, что никаких русскоязычных поисковиков: искать изображения с помощью Яндекса и Мейл.ру невозможно. Тем не менее, данное расширение очень популярно у части пользователей. Если такой функционал подходит под ваши запросы, то можем смело его рекомендовать.

Кто украл мои картинки

Еще один лидер среди загрузок у русскоязычных пользователей — “Кто украл мои картинки”. Изначально подразумевалось как небольшое расширение для художников. С его помощью творцы могли бы проверять, не украл ли кто-то их работы. Подобная проблема долгое время обсуждалась многими пользователями интернета. Единого решения так и не было придумано, поэтому творцам предложили компромисс — они могут самостоятельно найти тех, кто ворует их работы. А вопрос борьбы со злоумышленниками переходит на плечи владельцев порталов, где размещаются рисунки.

Сегодня данное расширение используется не только для поиска картинок, но и для поиска фотографий. Его используют фотографы, графические дизайнеры и многие фрилансеры. Предусмотрена возможность поиска с помощью самых популярных поисковиков. Также любую картинку можно проанализировать во всплывающем окне. Но за богатый функционал придется расплачиваться не самой высокой производительностью.

Поисковые системы

Самый простой подход к распознаванию лиц — это использование поисковых систем. Любой крупный поисковик имеет свой алгоритм, который решает эту задачу с той или иной успешностью.

Яндекс

Главный отечественный поисковик Яндекс весьма достойно справляется с нахождением людей на фотографиях.

Процесс выглядит так:

Перейдите на главную страницу Яндекс.Картинок и нажмите кнопку поиска по изображению в виде фотоаппарата.

Выберите нужный файл с компьютера или перетащите его в соответствующее поле.

Яндекс попытается понять, что изображено на картинке, и найдёт похожие снимки. Если человек известный, то сервис покажет его имя. Если же нет, то ниже будут показаны близкие изображения и адреса сайтов, где они встречаются.

Главный мировой поисковик тоже качественно ищет лица. Сложно сказать, какой из них лучше справляется с задачей — он или Яндекс, так как хорошие результаты выдают оба сервиса.

Принципиальных отличий в процессе поиска через Google нет:

Зайдите на страницу Google Картинки, нажмите кнопку «Поиск по картинке» и загрузите нужный файл.

Откроется результат поиска по фотографии. Google попытается предположить, кто на ней изображён, а также даст ссылки на похожие фото и страницы с этим изображением.

Mail.ru

Поисковая система Mail.ru не умеет искать людей по портретам, но их «Облако» (облачное хранилище) в своей мобильной версии способно распознавать лица и находить в фотогалереях своих пользователей.

Другие поисковики

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

  • Tineye;
  • SauceNAO;
  • IQDB и т. д.

Порядок их использования практически не отличается от Яндекса и Гугла.

Стоит ли переживать о программах, распознающих лица?

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

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

Говоря о программном обеспечении, все они работают по-разному, но в основе своей используют похожие методы и нейросети. У каждого лица есть множество отличительных признаков (в мире невозможно найти два идентичных лица, а ведь сколько их было за всю историю человечества!). К примеру, программное обеспечение FaceIt определяет эти признаки как узловые точки. Каждое лицо содержит примерно 80 узловых точек, схожих с теми, что мы упоминали прежде: расстояние между глазами, ширина носа, глубина глазных впадин, форма подбородка, длина челюсти. Эти точки измеряются и создают числовой код — «отпечаток лица» — который затем попадает в базу данных.

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

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

На смену 2D пришло 3D-распознавание. Эта недавно появившаяся тенденция в программном обеспечении использует 3D-модель, обеспечивающую высокую точность распознавания лица. Запечатлевая трехмерное изображение поверхности лица человека в реальном времени, ПО выделяет отличительные черты — где больше всего выдаются жесткие ткани и кость, например, кривые глазного гнезда, носа и подбородка — для идентификации субъекта. Эти области уникальны и не меняются со временем.

Построение 3D-модели лица

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

  • Обнаружение: получение снимка при помощи цифрового сканирования существующей фотографии (2D) или видео для получения живой картинки субъекта (3D).
  • Центровка: определив лицо, система отмечает положение головы, размер и позу.
  • Измерение: система измеряет кривые на лице с точностью до миллиметра и создает шаблон.
  • Репрезентация: система переводит шаблон в уникальный код. Этот код задает каждому шаблону набор чисел, представляющих особенности и черты лица.
  • Сопоставление: если снимок в 3D и база данных содержит трехмерные изображения, сопоставление пройдет без изменений снимка. Но если же база данных состоит из двумерных снимков, трехмерное изображение раскладывается на разные составляющие (словно сделанные под разными углами двумерные снимки одних и тех же черт лица), и они конвертируются в 2D-изображения. И затем находится соответствие в базе данных.
  • Верификация или идентификация: в процессе верификации снимок сравнивается только с одним снимков в базе данных (1:1). Если целью же стоит идентификация, снимок сравнивается со всеми снимками в базе данных, что приводит к ряду возможных совпадений (1:N). Применяется тот или иной другой метод по необходимости.

Принцип работы сервиса поиска людей по фото

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

С компьютера пользоваться сервисом было еще проще:

  • Откройте сайт https://findface.ru/;
  • Авторизуйтесь через свой профиль в ВК;
  • Загрузите или перетащите файл в указанное поле;
  • Нажмите клавишу «Поиск»;
  • Буквально через пару секунд результат отображался на экране.

Также, можно было скачать Findface на компьютер – отдельную утилиту, работа с которой не требовала взаимодействия с браузером. Сервис поиска отлично искал людей даже по плохим фото – темным, мутным, подвергнутым различной ретуши или обработке. Результативность поиска достигала 70%!

Алгоритмы OpenCV

У изображения лица есть свои характеристики:

  1. Темные и светлые участки и зоны (темные — глаза, губы; светлые — лоб, щеки, подбородок).
  2. Лица всех людей устроены по одному принципу (глаза — на одной линии, под глазами — нос, под носом — губы, под губами — подбородок).

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

Для этого можно использовать OpenCV — библиотеку алгоритмов компьютерного зрения и обработки изображений. Реализована она на C/C++, также разрабатывается для Python, Java, Ruby, Matlab, Lua и других языков.

Профессия

Fullstack-разработчик на Python

Научитесь программировать на Python и JavaScript, изучите фреймворки Django и React, SQL, а также познакомьтесь с DevOps-практиками и основами Linux.

Узнать больше

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

Распознавание лиц – одна из возможностей технологии компьютерного зрения, алгоритмов (нейросетей), обученных находить, распознавать и отличать изображения. Это могут быть лица людей, животные, объекты на дороге, разновидности огнестрельного оружия и многое другое. Для подобных систем изображения – это набор данных с отличительными признаками. В случае распознавания людей алгоритмы опираются на биометрические данные – характеристики лица, например, жёсткие ткани, кривые глазного гнезда, носа и подбородка.

Принципы работы технологии исследователи описали в 2001 году. Наиболее востребованный, метод Виолы – Джонса, находит человека по соотношению ярких и тёмных участков на изображении, фиксируя области, где их взаимное расположение напоминает лицо. Совсем недавно такую систему было несложно обмануть, спрятав лицо под капюшон, маску или специальный макияж, но с каждым годом видеокамеры становятся совершеннее.

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

Система распознаёт человека по 80 узловым точкам, фиксируя ключевые и второстепенные характеристики лица. Затем программа переводит данные с изображения в числовой код, также называемый отпечатком лица (faceprint). На последнем этапе система сверяет результат с базой данных полиции, где может храниться дополнительная информация о гражданах: его Ф.И.О., адрес, телефон и не только. Другая крупная база данных – социальные сети, в частности Facebook.

Но и у 3D-моделирования есть недостатки, что стимулирует новые разработки. К примеру, компания Identix предложила технологию распознавания лиц по анализу текстуры кожи, будь то линии, поры, шрамы и другие характерные детали. Разработчики уверены, что их система сможет различить даже близнецов, и ей не помешают очки на лице или яркий макияж. Также существуют алгоритмы, способные определять личность даже в полной темноте или при плохом освещении. Инфракрасные камеры фиксируют тепловой след, который излучает человек.

Поисковые системы Google и Yandex для распознавания лиц

Порядок действий следующий:

  1. Переходим в поиск картинок .
  2. В строке поиска находится значок фотоаппарата, после нажатия на который производятся действия с картинкой.
  3. Изображение можно перетащить (в т. ч. и сразу из интернета), загрузить файлом с компа, а также указать его URL.
  4. Запускается поиск и на полученных результатах мы видим найденное изображение (можно увидеть в разных размерах) и похожие на него, а также сайты, на которых размещена искомая картинка.

Поиск по картинке в Яндекс работает по тому же принципу и результаты выдает в таком же стиле, как и Google.

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

Ну и ещё добавлю, что на данный момент поиск по изображению в Яндекс работает лучше, чем в Гугл. Т.е. то, что Google порой не находит, то находит Yandex, а именно — сайты, на которых есть изображение из поиска.

Где нужно распознавание лиц?

Разработкой ПО для распознавания и улучшением алгоритмов занимаются программисты и дата-сайентисты. Эта технология нужна в разных сферах:

  • Государство: видеоаналитика используется службами безопасности стран для пограничного контроля, а в Москве так находили нарушителей карантина. Службы безопасности организаций, имеющих дело с секретностью, также используют алгоритмы идентификации для контроля доступа сотрудников к секретным объектам.
  • IT-индустрия: Microsoft, Facebook, Google, Яндекс, ВКонтакте тоже разрабатывают собственные алгоритмы. Например, в есть функция распознавания лиц на фотографиях, которые выкладывают пользователи.
  • Медицина: технология помогает выявить болезни и отслеживать прогресс в лечении.
  • Банкинг: банки используют идентификацию по лицу, чтобы снять деньги в банкомате или получить кредит.
  • Образование: распознавание лица помогает поймать тех, кто списывает, — сервисы подключаются к камере на компьютере студента и отслеживают его поведение и движение глаз.
  • Персональные портативные устройства: на смартфонах помимо идентификации пользователя распознавание лица выполняет и развлекательную функцию — у приложений Samsung, Snapchat и Instagram оно лежит в основе AR-фильтров и масок для лица.