Как устроен компьютерный деанон по лицу — и можно ли его избежать
Привет, мои хакерята! Sulhack на связи, решил вам подробно описать что такое слежка, и как скоро о нас будут знать всё.
Система видеонаблюдения SenseVideo от китайской SenseTime Group — один из
самых дорогих стартапов в области компьютерного зрения. Система не только
определяет и классифицирует объекты, но и автоматически распознает пешеходов
Современное компьютерное зрение обеспечило государства небывалыми
возможностями в области видеонаблюдения.
Кажется, лучше прочих этим
пользуются авторитарные (или склонные к авторитаризму) режимы. С деаноном
пытаются бороться самыми разными способами — от лазерных указок до
специального макияжа и украшений. Однако если в Гонконге маски и шарфы
надевают протестующие, то в Москве массово переходят на балаклавы сами
правоохранители. Впрочем, против новых, только появляющихся систем
распознавания лиц ни то, ни другое уже, видимо, не поможет.
Сейчас в Китае работает больше 200 миллионов камер, а к 2020 году их число
должно достигнуть 400 миллионов. Пытается не отставать от Китая и правительство
Москвы. В июне 2019-го мэр столицы Сергей Собянин заявил, что в ближайшее
время более 200 тысяч видеокамер по всему городу подключат к системе
идентификации личности по лицам. В конкурсе на ее разработку участвуют
компании IVA Cognitive и NTechLab. Последняя широко известна своим алгоритмом
и (ныне закрытым для обычных пользователей) сервисом FindFace.
Эксперименты по применению системы распознавания лиц в
столице, проводившиеся департаментом информационных технологий Москвы
(ДИТ) совместно с МВД, уже показали впечатляющие результаты. По словам
полицейских, с 2017 года благодаря установке тысячи камер возле подъездов
жилых домов задержали более 90 преступников, находившихся в розыске.
Использование видеомониторинга и системы идентификации по лицам на
нескольких станциях московского метро ежемесячно приводит к пяти-десяти
задержаниям.
Однако распознавание лиц не обязательно должно быть привязано к стационарным
камерам. Системы, способные определять нужных людей в толпе, могут быть
мобильными. Например, в том же Китае портативные системы распознавания,
напоминающие умные очки Google Glass, тестируются с начала 2018 года.
Функционально похожие, но существенно менее футуристичные мобильные
системы в скором времени получат и российские полицейские: в мае 2019-го
компания Zhejiang Dahua Technology и входящая в «Ростех» NTechLab предложили
силовикам носимую камеру с функцией распознавания лиц. Решение довольно
практичное: на борту камеры-видеорегистратора операционная система Android
6.0.1, детекция лиц происходит внутри самого устройства, а на сервер для
идентификации отправляются уже вырезанные «портреты» с дополнительными
метаданными. По словам источника «Ведомостей», тестирование устройств
полицией уже началось, аналогичные устройства анонсировали и конкуренты
NTechLab — компания VisionLabs.
Внедрение таких систем может иметь далеко идущие последствия для участников
массовых акций. По статистике, представленной в рамках тестирования тех же
пилотных проектов департамента информационных технологий и МВД, одни только
фиксированные камеры позволили идентифицировать и задержать на массовых
мероприятиях более полутора сотен преступников «в бегах»; если к ним
прибавятся данные с портативных камер, задержанных может стать гораздо
больше.
Как работает распознавание
Технология распознавания человека по лицу состоит из двух отдельных и очень
разных по сложности этапов: детекции и собственно распознавания. На первом из
них компьютерный алгоритм анализирует видеоряд и пытается найти на
изображении область, где находится лицо. В принципе, сделать это можно и
вручную — если есть снимок конкретного подозреваемого, которого требуется
«пробить по базе». Однако в большинстве случаев системы распознавания
работают со сплошным видеопотоком, поэтому для поиска лица в кадре
используются простые автоматические алгоритмы.
Главный из них — созданный еще в 2001 году метод Виолы — Джонса, который
сейчас встроен в каждый смартфон и во многие фотоаппараты. Алгоритм обращает
внимание на соотношение ярких и темных участков на картинке и ищет в ней такие
области, где взаимное расположение участков похоже на лицо. Это очень простой
метод — его простота, с одной стороны, делает алгоритм очень быстрым и
экономным к вычислительным ресурсам, но с другой — позволяет легко
обманывать автоматику и уходить от детекции. Сделать это можно с помощью
макияжа (который изменяет положение на лице ярких и темных пятен), глубокого
капюшона, надвинутой на глаза шапки и прочих простых средств.
Получится обмануть Виолу — Джонса или нет, легко проверить самому: достаточно
попробовать сделать селфи на телефоне или загрузить снимок в социальную сеть
— автоматически детектированное лицо обычно выделяется рамкой. Однако даже
если детекция не сработает, важно помнить, что ваше лицо может быть вырезано
из кадра вручную. И тогда оно все равно отправится на следующий этап —
распознавание.
После детекции области лица изображение сперва конвертируется из цветного в
серое (матрицу яркости), затем определяется расположение глаз, обрезается по
контуру лица (фактически особенности контура не играют никакой роли для
опознания, поэтому в систему подгружаются стандартные «овалы»). Наконец, это
уже достаточно схематическое изображение превращается в числовой вектор —
последовательность, содержащую максимум несколько сотен параметров, которые
отличают лицо одного человека от другого.
Преобразование изображения лица в числовой вектор — самый сложный этап
технологии. Его обычно поручают сверточным нейросетям, задача которых —
нивелировать различия в освещенности, ракурсе, мимике и прочих особенностях
конкретной фотографии и свести изображение человека к набору признаков,
максимально похожих для разных снимков одного человека и максимально
различающихся для разных людей.
После того как этот набор признаков найден, задача распознавания становится
тривиальной: полученные значения сравниваются с другими векторами,
хранящимися в базе данных, и среди них находится самый близкий. Если близость
превышает некоторый заранее заданный порог, система сигнализирует о
совпадении, а затем выдает пользователю идентификатор и привязанный к нему
файл с личным делом.
Чтобы система могла обнаружить человека, в базе данных уже должны быть
загружены его фотографии и созданы специфические для них векторы признаков.
Чем больше таких фотографий, тем точнее полученный вектор — и тем проще
системе вас распознать. Лучшие источники для их поиска — соцсети, базы МВД,
ФСБ, ФМС или компаний. Огромными базами фотографий лиц владеют
букмекерские конторы (для регистрации требуется сделать селфи с паспортом в
руках); банки, предлагающие услугу «платить лицом»; сервисы для подбора
причесок и макияжа; приложения вроде Msqrd или FaceApp.
Методы противодействия: лазеры и балаклавы.
Если ваших снимков нет и никогда не было ни в одной базе данных, вас не смогут
идентифицировать. Но для этого необходимо совсем не оставлять за собой
цифровых следов, что практически невозможно — хотя бы потому, что для этого
придется, например, отказаться от получения паспорта. Можно ли при этом
попытаться защитить себя от установления личности?
Методы противодействия идентификации условно можно поделить на две группы:
первые не позволяют алгоритмам детектировать лицо на видео, вторые не дают его
правильно распознать.
Так, участники недавних протестов в Гонконге придумали два простых и по-
китайски практичных способа избежать детекции лиц. Один из них — надевать
балаклавы и маски для лица. Важно отметить, что обычные марлевые повязки для
рта и носа не помогут, поскольку ключевая информация для алгоритмов связана с
областью глаз, надбровных дуг, бровей и верхней части переносицы. Не выручат и
стандартные темные очки. При ношении этих аксессуаров по отдельности системы
успешно определяют личность бунтовщиков. Однако их совмещение и
использование капюшона позволяет в ряде случаев избежать автоматической
детекции и идентификации — по крайней мере с помощью современных
промышленных систем.
Впрочем, для российских протестующих этот метод с некоторых пор неприменим:
согласно закону Российской Федерации «О собраниях, митингах, демонстрациях,
шествиях и пикетированиях», их участникам запрещено использовать «маски,
средства маскировки, иные предметы, специально предназначенные для
затруднения установления личности».
Другой метод — засветка объективов с помощью лазерных указок. В Гонконге их
используют даже против полицейских, светя в глаза и мешая, например,
прицеливаться. Действенность этого способа на условиях анонимности
подтвердил эксперт по видеоаналитике из одной московской фирмы,
разрабатывающей автоматизированные системы работы с клиентами в банках и
ритейле. По его словам, даже простая засветка ярким солнечным светом в погожий
летний день сбивает алгоритмы с толку. А использование лазеров дает вместо
нормального кадра с изображением лишь несколько расплывчатых световых пятен
на темном фоне.
Косвенное подтверждение эффективности простой засветки есть и в конструкции
систем автоматической классификации транспортных средств (АКТС): при въездах
на платные трассы камеры всегда дублируются с двух сторон, чтобы избежать
ошибки из-за лобовой засветки при восходящем или заходящем солнце.
Методы противодействия: макияж и украшения
Помимо явно запрещенных в России масок, а также лазерных указок,
использование которых может трактоваться как неподчинение или даже нападение
на полицейских, существуют и другие методы снизить вероятность своей
идентификации — которые находятся в «серой» правовой зоне. К ним можно
отнести использование грима, париков, очков, яркого макияжа — словом, все то,
что в области компьютерного зрения называется disguised face identification. В
отличие от «обычного» распознавания, в этом случае пока нет хорошо
отработанных, высокоточных и готовых к внедрению промышленных систем.
Разные команды инженеров тестируют различные подходы, и порой они дают очень
разные результаты.
Современный уровень качества детекции промышленными системами позволяет
оценить, например, отчет российской компании «Видеомакс», в котором
специалисты протестировали пакет аналитических программ для распознавания
лиц «Face-Интеллект» (разработка компании Axxon, подразделения британской
ITV-Group). Выяснилось, что никакие накладные усы, бороды, темные и прозрачные
очки не смогли обмануть алгоритмы. А вот ношение объемного парика снижало
точность опознания почти вдвое. Совместное же использование парика с
длинными волосами, головного убора, наклеивание пластырей и имитация синяков
на лице позволяли системе идентифицировать пользователя с точностью лишь в
51%.
Как ни странно, самый впечатляющий результат достигнут при использовании
патриотического грима: нанесение на лицо цветов российского триколора под
углом 45 градусов и использование кепки с надписью «Россия» напрочь
исключали даже обнаружение лица на кадре. Система просто ничего не видела.
Относится ли к средствам маскировки патриотический грим, пока неясно — в
определении Конституционного суда использование грима на лице допускается, но
только в агитационных целях, а не в целях сокрытия личности.
В том же 2017 году, когда тестировался «Face-Интеллект», директор по
распространению технологий «Яндекса» Григорий Бакунов придумал гораздо
более сложный метод противодействия идентификации. Он учел принципы работы
нейросетей при опознании специфических особенностей лиц и предложил
наносить макияж в виде нескольких, на первый взгляд, хаотически расположенных
линий и точек. Его метод не только помогал избегать идентификации, но и позволял
подсунуть системе другое лицо. Определенные схемы макияжа обманывали
алгоритм, и он считал, что это лицо совсем другого человека. Сервис на основе
придуманной технологии Бакунов и его коллеги тогда решили не делать —
ссылаясь на то, что «слишком уж велик шанс использовать его не для добра, а
вовсе с другими целями».
По словам самого Бакунова, у метода две слабости. Во-первых, такой макияж
довольно трудно подобрать и правильно нанести. А во-вторых, он выглядит
настолько странно и нелепо, что может привлечь излишнее внимание.
Схожий с макияжем подход удалось пару лет назад придумать польским
дизайнерам из компании Nova. Они разработали так называемые украшения для
лица, позволяющие сбить с толку системы идентификации. Самое популярное их
изделие состоит из подобия оправы для очков, к нижним дугам которой
прикреплены два закрывающих скулы медных круга, а над переносицей поперек
лба возвышается медный рог. Этот эстетичный аксессуар практически не закрывает
лицо для человека, но блокирует систему распознавания лиц — по крайней мере ту,
которую использовал Facebook на момент тестирования дизайнерами.
Методы противодействия: очки и катафоты
Одним из самых перспективных подходов к противодействию идентификации
личности по лицу может стать использование специальных высокотехнологичных
очков. Некоторые выглядят довольно эстетично и не привлекают лишнего
внимания. Человек в них не вызовет подозрений у полиции, их можно носить на
митингах и пикетах. А вот эффективность таких очков в ряде случаев очень высока,
особенно против камер наблюдения с инфракрасной подсветкой области обзора.
Так, инженеры из японского Национального института информатики (National
Institute of Informatics) еще в 2015 году испытали очки, в которые был встроен набор
инфракрасных светодиодов, невидимых для человеческого глаза, но способных
засветить область вокруг глаз и носа для объективов светочувствительных
видеорегистраторов. Этот простой трюк лишил систему возможности даже просто
обнаружить лицо в кадре.
Испытания одного из первых прототипов очков со светодиодами, мешающими работать
системам видеонаблюдения
Схожий подход использует инженер и дизайнер Скотт Урбан. В разработанных им
очках Reflectacles Ghost и Phantom в оправу помещено множество катафотов. Они
отражают инфракрасные лучи, испускаемые многими моделями камер наблюдения
(особенно предназначенных для ночного режима), и превращают лицо в большое
ярко светящееся пятно. В другой модели очков от Reflectacles (IRPair) применяется
обратный принцип: в них встроены особые фильтры, не позволяющие
инфракрасному излучению достичь лица и подсветить его для камеры. Кроме того,
они предотвращают сканирование радужки глаз и трехмерное картирование лица.
Методы противодействия: многоликая одежда
Самый экстравагантный способ уйти от слежки «Большого брата» предложили
дизайнеры одежды. Это так называемый умный текстиль HyperFace, сделанный для
проекта Hyphen-Labs NeuroSpeculative AfroFeminism. Задача одежды HyperFace —
перегрузить алгоритм идентификации и тем самым воспрепятствовать его работе.
Для этого на ткань наносится особый узор, имитирующий множество схематичных
лиц. При этом каждый из паттернов нацелен на противодействие одному
конкретному алгоритму, — например, заложенному по умолчанию в библиотеку
OpenCV методу Виолы — Джонса или HoG/SVM (Histogram of Oriented Gradients/
Support Vector Machines).
Строго говоря, использование «многоликой одежды» — это эксплуатация старой
психологической проблемы фигуры и фона. Лицо выделяется на фоне остального
пейзажа как фигура, однако если весь пейзаж состоит из лиц, то выделить и
опознать одно из них уже невозможно. Все становится фоном — и алгоритм
перестает работать.
Методы противодействия: обратная задача
Не только государство может применять системы идентификации по лицам против
своих граждан. Некоторые участники массовых акций в последнее время начали
использовать видео- и фотоматериалы с протестных акций, чтобы
деанонимизировать полицейских, превышающих полномочия. В ответ на это
силовики сами стали массово использовать балаклавы, использование которых
простыми гражданами на митингах запрещено. Кажется, что это —
гарантированный способ сохранить свою анонимность. Но так ли это на самом
деле — сложный технический вопрос. Если исходить из результатов последних
соревнований в области машинного зрения, складывается впечатление, что ответ
скорее отрицательный.
Прежде чем говорить об этих результатах, надо внести ясность с понятием т. н.
точности распознавания, вокруг которой обычно идет разговор при обсуждении
алгоритмов. К сожалению, сама по себе «точность», то есть суммарное число
ложноположительных и ложноотрицательных срабатываний системы, деленное на
число ее испытаний, почти ничего не говорит о том, справится ли данный алгоритм
с конкретной задачей. Для этого нужно как минимум знать объем выборки людей,
среди которых требуется найти обладателя лица на снимке (а еще лучше понимать
цену ошибки и представлять площадь под ROC-кривой).
Проще говоря, если речь идет о наблюдении за миллионами людей в сплошном
потоке, — например, о системах видеонаблюдения в метро или на массовой акции,
— то доля ложных срабатываний в таких системах должна быть очень низкой (а
«точность» — высокой) — иначе общая стоимость реагирования на каждое
срабатывание будет слишком высокой. Если же число людей, среди которых
система проводит поиск, можно каким-то образом значительно снизить (например,
искать не среди всех граждан, а среди представителей известной профессии, пола,
возраста и так далее), то и требования к точности будут принципиально более
низкими.
Одна из главных площадок для тестирования самых современных систем
распознавания лиц — это конкурсы вроде Disguised Faces in the Wild. Здесь и в
других подобных конкурсах командам разработчиков предлагается решить задачу
идентификации человека среди изображений лиц, неузнаваемо измененных
гримом, масками, профессиональным киномакияжем и так далее. Специального
дата-сета в балаклавах в этом конкурсе нет, но для большей сложности среди
неправильных ответов есть даже изображения пародистов — то есть системе
предлагается угадать лицо, например, Леди Гаги среди изображающих ее актеров.
Последние результаты конкурсов по идентификации скрытых лиц говорят о
следующих цифрах. При заданном уровне ложных срабатываний в 1% самые
лучшие алгоритмы дают верный ответ более чем в 90% случаев. Если же уровень
ложных срабатываний снизить на порядок, результат оказывается лишь на 10%
хуже.
Этого, конечно, недостаточно для того, чтобы уже сегодня можно было внедрять
системы распознавания скрытых лиц в метро. Но если стоит задача поиска в
гораздо меньшей выборке, точности современных методов распознавания даже
лиц под гримом или маской будет, по-видимому, вполне достаточно для
обнаружения потенциальных кандидатов на деанонимизацию. И хотя сейчас
готового сервиса на основе этих алгоритмов нет, он может появиться очень скоро.
Что делать с полученной таким образом информацией — еще один большой
вопрос, но это уже вопрос этики, а не технологии. Принцип этической
нейтральности относится к алгоритмам распознавания лиц ровно в той же степени,
как и к методам шифрования или разработкам оружия.
С вами был Sulhack, не прощаемся!