Как стать автором
Обновить

Нейросети в большом городе. Разбираемся, как они помогают идентифицировать людей, и запускаем собственную нейросеть

Время на прочтение 7 мин
Количество просмотров 19K
Всего голосов 32: ↑31 и ↓1 +30
Комментарии 26

Комментарии 26

НЛО прилетело и опубликовало эту надпись здесь
Увы нет. Системы машинного зрения уже достаточно хорошо развиты и теперь распознавание достаточно надёжно выполняется по половине лица или по области глаз (по половине лица уровень успешного распознавания составляет 90%). Новые формы распознавания лиц теперь могут распознавать не только людей в масках, закрывающих рот, но и людей в шарфах или с фальшивыми бородами.

Плюс еще из-за коронавируса много граждан стали выходить на улицы в масках, это подтолкнуло китайских производителей SenseTime, FaceGo, Minivision внедрять эти технологии распознавания частично закрытых лиц в коммерческие модели видеокамер.
по половине лица уровень успешного распознавания составляет 90%

Московское метро в сутки перевозит около 8 млн. пассажиров. Т.е. можно ожидать, что каждое десятое распознавание в маске будет ошибочным (почти 800 тыс. человек).
Допустим маски отменят, но даже один процент неточности даст 80 тыс. ложных распознаваний в сутки. Ок, возьмем референсную точность для Facenet — авторы заявляют 99.67%. Все равно выходит 21 тыс. ошибок каждый день.
Интересно, как вообще планируется с этим разбираться, оспаривать ошибочные транзакции, в случае списания оплаты проезда в метро, например?
А ведь есть уже и банковские приложения с биометрией.
Не забывайте тот факт что мы имеем дело с видео. а видео это отдельные кадры.
А нейронка обрабатывает их по отдельности.
Трекинг человека задача крайне простая, выдераем «лица» с кадров, детектим, допустим, каждый пятый, по итогу имеем что 6 из 10 это вот этот человек. Значит это действительно он.
Таким образом 21 тыс. ошибок превращаются в… десятки, ну пускай даже сотни.
PS:
по поводу поста — mtcnn и facenet это уже сильно устарело. Кто захочет заниматься — смотрите в сторону RetinaFace и ArcFace, хотя не факт что и это уже не устарело.
Сколько кадров из видео на одного человека обработает нейронка? Ну, допустим, десять (хотя это потребует десятикратного увеличения требуемых вычислительных ресурсов).
Усредним результаты этих десяти кадров. На сколько уменьшится вероятность ошибки? Интересуют конкретные цифры. Рассчитать тут сложно, потому что кроме ошибки для конкретного кадра из-за неудачного ракурса, есть еще просто очень похожие люди. Если ошибки неизбежны, кто и как будет их разгребать?
Применительно к обслуживанию в банкоматах, например, даже десять ошибок в день — уже совершенно неприемлемо, на мой взгляд.

Пока не устарели ни Retinaface ни ArcFace. ArcFace вот на днях вообще новая модель вышла значительно более точная — Partial_FC.
Единственное, как со многим опенсорсом придется потратить много времени чтобы из отдельных модулей собрать единое оптимизированное решение.

А маска с нанесённым орнаментом? И солнечные очки с ИК-фильтром?)
НЛО прилетело и опубликовало эту надпись здесь
github.com/deepinsight/insightface/tree/master/detection/RetinaFaceAntiCov
opensource, проверьте.
есть еще алгоритмы face reconstruction, но они больше заточены работать по серии кадров + поиск похожих по «оставшимся частям» и там дальше цепочка всяких преобразований, на выходе чуть ли не 3d скан лица…
За 2020 год был накоплен настолько обширный статистический материал, что теперь натаскать по нему нейросеть, думаю, не представляется проблемным. Если бы не было короны непонятно вообще как можно было бы получить такие объёмы «чистого» эталона для нейросетей — граждане получали цифровые пропуска однозначно связывая свои ПД с проездными, которыми авторизовались проходя турникеты, например, метро, будучи в масках напротив которых аккуратно висят камеры. Сами понимаете, насколько это подстегнуло увеличение точности распознавания по части лица.
Маска (носим правильно, на нос!) плюс солнечные очки плюс шапка.

И шапочка из фольги.

Конечно защищает.
Надо только понимать разницу между пиаром — распознавание ЛИЦА в маске, когда от лица остаются только глаза и брови — то есть распознавание по области глаз.
И распознавание объекта по совокупности и других черт — прическа, маска, одежда.
В условиях зимы-осени (шапка+маска) — псевдоалгоритмы почти не работают.
В условиях зимы-осени (шапка+маска) — псевдоалгоритмы почти не работают.


А походка? Кстати, а где можно посмотреть демки по этой теме?
достаточно много информации по запросу «обнаружение походки на изображении».
в первых трех запросах есть в том числе постановка задачи для диссертации (похоже, что магистр)
есть статья «Методика учета угла направления движения… при изучении… походки»

Ну подобные чудо из подручных средств собирается за месяц. Или вообще покупается

Широкой аудитории алгоритм был представлен в виде сервиса FindFace, который искал людей во Вконтакте по фотографии.

А сейчас остались какие-то сервисы такого типа?

Яндекс Поиск по картинкам

А можно немного лекбеза о том как все работает в комплексе?
1. Камера выделяет некие критерии (взаимное расположение ключевых точек) и по этим сведениям в центре производится поиск человека
2. Камера шлёт картинки на сервер, где и производится обработка?
Не может же сама камера хранить у себя всю базу для самостоятельного выявления человека, что попал в поле её зрения, а в центр слать только данные идентифицированного лица.

Можно придумать много разных способов, выбор зависит от бюджета.


Камера считывает лица, извлекает вектора и отправляет в центр. (тут надо довольно дорогую камеру, которая потянет нейронку в реальном времени)


Камеры подключены к хабу, хаб к устройству, которое со своих камер обрабатывает видео и шлет вектора в центр. (сложное обслуживание)


Камеры подключены к хабу, хаб передает видео в центр. В центре видео скармливаются серверам с нейронками. (удобно, дешево, но критичны перебои связи)


Общий принцип работы:
Камера > видео > предварительная обработка > нейросеть > вектор > база данных > список возможных личностей.
Нейросеть выдает компактный набор чисел, которые позволяют довольно точно идентифицировать человека или найти очень похожих.

«так что те, кто на основе старых алгоритмов, бросайте это дело! » — это конечно цифрорабство, человек не идёт, он бежит к обрыву где у края нейросети уже пинками уже помогут сделать последний необратимый шаг

А есть какой-нибудь сервис для изменения лица для фотографий в соц.сетях? Какое-нибудь размытие по точкам

Нет такого понятия как «детекция» в отечественной литературе (детектирование — наиболее близкое по звучанию и по смыслу в латинском языке, но обозначает другое понятие).
Обнаружение — вполне нормальное слово, зачем его заменять суррогатом?

Изначально (независимо от того. что обнаруживается, определяется, идентифицируется) была разработана общая теория, — см. например. Ван Трис — Теория обнаружения, оценок и модуляции, 1972. Обнаружения сигналов, целей или объектов на изображении/в видеоряде — всего лишь тип параметра.

FaceNet уже года 2-3 как устарел в плане точности. Лучше посмотреть в сторону Deepinsight Insightface и их же детектор лиц Retinaface (писали тут уже в комментариях).
К тому же буквально на днях опубликовали обновленную модель предобученную на 500 тыс. уникальных персон и чуть меньше 20 млн. лиц.

поправка, 360 тысяч уникальных персон

Интересно, как идентификация регулируется законами о персональных данных. Можно ли что-то сделать, если я не хочу, чтобы меня распознавали?
Зарегистрируйтесь на Хабре , чтобы оставить комментарий