Почему Вконтакте хотят засудить SearchFace. Разработчик популярного сервиса поиска людей по фотографии рассказывает, как это работает и почему вам не скрыться от SearchFace.
Из-за шумихи с иском ВК на второй план отошло то важное, ради чего мы запустили сервис — чтобы протестировать возможности поиска. А раз уж теперь сервис доступен широкой публике, хочется продемонстрировать всем, на что способны наши алгоритмы распознавания.
Подпишитесь на наш канал в Телеграме, чтобы читать только интересные новости высоких технологий
На данный момент SearchFace — небольшая демка работы алгоритмов. Каждый поиск у нас выполняется по базе из полумиллиарда альтернатив. То есть каждого человека необходимо отличить от сотен миллионов других, среди которых могут оказаться (и наверняка окажутся) и очень похожие на искомого человека люди. Да, эту задачу уже решал закрытый теперь FindFace (если мне не изменяет память, объем базы у них был примерно такой же), поэтому нам захотелось не просто повторить, а захотелось превзойти. Основная задача, которую мы перед собой ставили — попытаться сделать возможным поиск в том числе по сильно «искажённым» картинкам. Несколько примеров ниже, но можете поиграться сами.
Пример 1. Максим Черкасов, trashbox.ru.
Максим был одним из тех, кто, делая обзор нашего алгоритма, не постеснялся загрузить фото в зеркальных солнцезащитных очках. И всё равно на первых трёх местах в выдаче поисковой машины были исключительно правильные результаты. Причем на одном из них фотография была низкого разрешения, с необычным выражением лица и ко всему прочему сделанная шесть лет тому назад. Combo!
Результат:
Пример 2. Илья Красильщик и Султан Сулейманов из Meduza.io. Илья загрузил свою фотографию, на которой он смотрит в сторону, а Султан — фотографию в шарфе (где видно только часть лица). По его утверждению, которое мы естественно не проверяли, facebook его на этой фото опознать не смог, в то время как у нас на обоих результатах выдачи очень высокий score — это говорит о том, что алгоритм не просто выбрал самого похожего человека, а уверен в том, что нашел правильного. Грань «уверенности» проходит где-то на 0.65–0.67.
Пример 3. Никита Лихачёв, tj. Редакция TJ тестировала движок на своих сотрудниках, но в отличии от Максима Черкасова не пыталась челенджить наш алгоритм. Поэтому для целей этой статьи мы намеренно размыли фотографию Никиты imagemagick’ом с помощью gaussian-blur с разной величиной сигма.
convert Nikita_00.png -gaussian-blur 12x4 Nikita_04.png
И вплоть до сигма=16 в на первом месте была реальная фотография Никиты, при сигма=18 фото Никиты еще попадались в «топ-16», и только начиная с сигма=20 «топ-16» перестал содержать хоть что-то релевантное запросу.
А вот пример поиска по фото с необычной мимикой и нестандартным ракурсом — фотографии ставшей скандально известной этим летом фотомодели Натальи:
Фото с сайта vklybe.tv
Поисковая выдача:
Вот результат работы по фотографии 8-летней Эми Уайнхаус:
В «топ-16» есть много её уже взрослых фото:
С 7-летней Мадонной оказалось сложнее, но тем не менее выдача содержит и её взрослые фото, причем с ярким макияжем.
Результат:
И тут нужно понимать, что семь лет ей было в далеком 1965 году, а фотографии тех времён не всегда высокого качества.
Может показаться, что фотографии в примерах как-то специально подобраны, но вы можете сами попробовать на любых фото. Про сами алгоритмы расскажем чуть позже, а пока просто хочется, чтобы коллективный разум потестировал — фидбек очень важен для нас.
Источник habr.com | Автор Searchfaceteam