На кого из знаменитостей вы похожи по фото
Замечали ли вы когда-нибудь, что похожи на какую-нибудь знаменитую певицу или звезду Голливуда? Если не замечали, то самое время проверить это! Для того, чтобы определить сходство с известной личностью по фотографии, существуют специальные сайты и мобильные приложения. Пользоваться ими очень просто: достаточно загрузить одно фото — и программа через несколько секунд представит результаты. Давайте разберемся, какие сервисы для определения сходства со звездой по фотографии работают точнее всего.
ТОП-3 Интернет-ресурса «На какую знаменитость я похож»
Определить сходство с известной личностью по фото проще и быстрее через сервисы онлайн, так как это не потребует установки дополнительных программ. Для поиска вам понадобится лишь браузер с доступом в интернет и один фотоснимок.
Выбирайте изображение, где на снимке присутствует лицо только одного человека. При загрузке коллективных фото результаты могут отображаться некорректно. Также желательно, чтобы оно было хорошего качества.
Мы протестировали несколько сервисов. В качестве примера мы использовали изображение Юлии Топольницкой, которая снималась в известном клипе на песню «Экспонат» группы «Ленинград».
PicTriev
PicTriev — простой и бесплатный сервис, который анализирует черты лица на загруженном фото и ищет похожих людей в своей базе. Фотографии можно загружать как с компьютера, так и через ссылку в интернете.
Алгоритм действий PicTriev максимально понятный, есть меню на русском языке. Файлы принимаются в формате JPG (JPEG) и размером не более 200 Кб, поэтому иногда их приходится сжимать. Примечательно, что программа также определяет по фотографии средний возраст человека.
Чтобы узнать, с кем из знаменитостей у вас есть внешнее сходство, выполните следующие действия:
- Нажмите на кнопку «Upload Image» или вставьте ссылку на ваш снимок в интернете в соответствующие окно.
- После загрузки программа начнёт автоматическое распознавание изображения. Если этого не случилось, нажмите кнопку «Поиск».
- Через несколько секунд будут представлены результаты, где в процентном соотношении будет указано ваше сходство с десятью знаменитыми личностями.
- Кликните на фотографию звезды, чтобы узнать о ней более подробно. Сервис автоматически откроет страницу в Википедии с информацией об этом человеке.
PicTriev идентифицировал Юлию Топольницкую как женщину в возрасте 30 лет (на самом деле девушке 29 лет). О схожести со знаменитостями можете судить сами. Наибольший процент совпадения выявлен с Иванкой Трамп. Хотя, на мой взгляд, из всех предложенных вариантов Юлия больше похожа на Летицию Касту.
StarByFace
StarByFace – ещё один бесплатный сервис, который за считанные секунды распознает, кто из знаменитостей ваш двойник. Фотографии сюда также можно загружать с компьютера или по ссылке в интернете.
В базе известных личностей, загруженных на ресурс, присутствуют не только актеры и певцы, но и спортсмены и прочие звезды, среди которых есть даже представители России. Схожесть с их внешними данными определяется в процентном отношении. Еще примечательно, что StarByFace находит похожих людей как среди женщин, так и среди мужчин.
Меню на сайте представлено только на английском языке, но для его понимания достаточно базовых школьных знаний.
Чтобы определить, на какую звезду вы похожи, выполните следующие действия:
- В окно с надписью «Enter URL» вставьте ссылку на изображение из интернета или нажмите на кнопку «Upload a pic».
- Подождите, пока программа автоматически начнет процесс обработки, а если этого не произошло, нажмите «Select».
- Через несколько секунд вам будут доступны результаты.
- Выберите вкладку Females, чтобы увидеть сходство с 12-ю женщинами. Нажав на вкладку Males, вы увидите 12 похожих на вас мужчин. Под фотографией каждой звезды указаны её имя и фамилия, а сверху – процент сходства.
- Для повторного поиска нажмите кнопку «AGAIN».
Согласно результатам, наибольшая схожесть (72 %) у Юлии с американской актрисой Александрой Даддарио. С остальными знаменитостями, представленными в результатах поиска, тоже есть общие черты, однако процент сходства ниже. Полученными данными можно поделиться с друзьями через социальные сети.
Разработчики создали также бесплатное мобильное приложение StarByFace, доступное для iPhone и Android. Установить его можно через App Store или Google Play Market.
Sciencehunter
Третий в нашем списке – сервис Sciencehunter, выполненный полностью на русском языке. Меню здесь максимально упрощено, из-за чего поиск происходит почти мгновенно, но по сравнению с другими сервисами, его функционал кажется ограниченным. Так, Sciencehunter позволяет загружать фотографию только с компьютера, а ее сходство определяется лишь с тремя звездами.
Чтобы узнать, на кого из известных личностей вы похожи, выполните следующие действия:
- Укажите ваш пол, поставив галочку напротив букв М или Ж в левом верхнем углу страницы. Таким образом поиск будет проводиться среди знаменитостей выбранного пола.
- Нажмите на левый прямоугольник, чтобы загрузить снимок с компьютера, или перетащите его в окно с помощью мыши.
- Дождитесь результатов в правой половине окна. Напротив фотографий известных людей будет указан процент вашего сходства с ними.
- Для нового поиска еще раз нажмите на левый прямоугольник с вашим фото и загрузите следующее изображение.
Выборка на Sciencehunter проводится среди российских и иностранных селебрити, однако база последних здесь значительно меньше, чем на предыдущих сайтах. Видимо поэтому программа посчитала, что Юлия Топольницкая больше всего похожа на Джулию Робертс (сходство 22,02%).
ТОП-3 мобильных приложений для поиска похожих на вас знаменитостей
Gradient
Gradient — одно из самых популярных мобильных приложений, с помощью которого вы сможете определить, за какую из звёзд вас могут случайно принять на улице. Оно появилось несколько лет назад, однако получило известность совсем недавно благодаря активной рекламе в Instagram. Более 10 миллионов человек уже установили его на свои смартфоны.
Программа доступна как для Android, так и для iPhone. Установить ее можно бесплатно через Google Play Market или App Store.
Для поиска знаменитости со схожими чертами выполните следующие действия:
- Запустите программу и в нижней части экрана выберите слайдер с надписью «На кого ты похож?».
- Разрешите приложению доступ к фотографиям на вашем устройстве. После этого оно автоматически откроет Галерею.
- Выберите любое изображение для загрузки.
- Дождитесь результата.
Gradient показывает сходство только с одной известной личностью и, в отличие от веб-сервисов, он не выдает информацию о проценте похожести.
Создатели Gradient позиционируют его как приложение, использующую одну из самых точных в мире систем поиска сходства лиц. Но, несмотря на это, его результаты не всегда дают наилучшее совпадение. Так, в качестве звездного двойника Юлии Топольницкой программа предложила датскую модель Конни Нильсен, которой, между прочим, уже 55 лет. Да и цвет волос женщин на фото заметно отличается.
Facer
Мобильное приложение Facer находит сразу трех похожих человек, показывая процент их сходства с загруженным снимком. В выборке есть как российские, так и зарубежные знаменитости, в том числе спортсмены и политики.
Facer, как и Gradient, можно установить бесплатно из Google Play Market или App Store.
Чтобы узнать, кто из селебрити больше всего на вас похож, выполните следующее:
- Запустите приложение и выберите один из вариантов: «Сделать фото» или «Загрузить из галереи».
- Разрешите программе доступ к файлам или камере на вашем устройстве.
- Выберите уже существующую фотографию из Галереи или сделайте селфи.
- Через несколько секунд вам будут доступны результаты, которые можно сохранить на телефон или отправить друзьям через социальные сети.
Facer определил, что Юлия Топольницкая смахивает на герцогиню Сассекскую, Кети Топурия и Марию Кожевникову. Однако процент сходства очень маленький – всего 2%.
Celeb Like Me
Celeb Like Me позволяет узнать, на кого вы похожи больше всего, из целых 40 тысяч известных людей. А результатами поиска можно сразу поделиться через мессенджер WhatsApp.
Приложение работает без рекламы и доступно для бесплатного скачивания на Android из Google Play Market. Для установки понадобится всего 1,6 МБ памяти. К сожалению, владельцам iPhone оно пока не доступно.
Чтобы найти вашего двойника среди знаменитостей, выполните следующее:
- Запустите Celeb Like Me и нажмите синюю кнопку «Take Picture».
- Разрешите программе доступ к камере и сделайте фото.
- Процесс поиска занимает от 10 секунд до 1 минуты. В результатах будут два лица, наиболее похожие на вас. Также будет указан процент сходства.
Приложение определило, что Юлия Топольницкая похожа на Меган Фокс (74%) и Летицию Каста (83%). Схожесть Юлии с Летицией отмечали и другие сервисы, поэтому можно сделать вывод, что Celeb Like Me определяет двойников достаточно точно.
Подводя итог, можно сделать вывод, что не все программы работают корректно и находят действительно похожие на вас лица. Однако следует помнить, что человеческая внешность уникальна, и 100%-ное сходство встречаются разве что у близнецов.
Группировка фотографий по лицам
Приложение «Фотографии (Майкрософт)» использует технологии определения и распознавания лиц для быстрого и удобного поиска и систематизации фотографий друзей и родных. Технология определения лиц распознает лица среди других объектов на изображении. Например, обнаружение лиц помогает приложению «Фотографии» узнать, есть ли лицо на фотографии или видео для дальнейшего анализа. Технология распознавания лиц различает и группирует одинаковые лица на фотографиях и видео в вашей коллекции.
Дополнительные сведения о данных, собираемых и сохраняемых при использовании приложения «Фотографии», см. в документе Заявление о конфиденциальности.
Группировка фотографий по лицам
Если вы используете приложение «Фотографии» версии июля 2019 г. (2019.19061.17310.0) или более поздней версии, при запуске вам будет предложено указать, нужно ли использовать функцию группировки лиц.
-
Запустите приложение «Фотографии».
-
Отобразится экран приветствия с запросом на включение параметра «Люди» в приложении «Фотографии».
-
Выполните одно из следующих действий:
-
-
Чтобы удалить ранее определенные группы лиц, выберите Нет, спасибо . В качестве ответа на вопрос о том, следует ли отключить этот параметр, выберите Да.
-
Включение функции группировки лиц
-
В правом верхнем углу приложения «Фотографии» выберите Подробнее… > Параметры.
-
В разделе Просмотр и редактирование
-
Если включить этот параметр, вкладка «Люди» будет заполняться группами лиц. После добавления фотографий и видео в вашу коллекцию вкладка «Люди» будет выглядеть примерно так:
-
После добавления новых фотографий и видео группы лиц будут отображаться на вкладке «Люди». Эти группы можно связать с контактами из приложения «Люди» в Windows.
-
Свяжите группы лиц с вашими контактами, выбрав Добавить имя, а затем контакт. Если контакт человека пока отсутствует, его можно добавить в любое время.
-
После того как вы связали контакты, можно будет легко найти друзей и семью с помощью поля поиска.
-
Для удаления связи контакта с группой лиц, выберите нужную группу, чтобы открыть страницу с аватаром профиля и фотографией контакта. Рядом с аватаром находится имя контакта и значок карандаша.
-
Выберите значок карандаша, чтобы увидеть две следующие команды:
-
Удалить имя — для удаления связи контакта с группой лиц.
-
Открыть сведения о контакте — для перехода к соответствующей записи контакта в приложении «Люди» в Windows.
-
-
Выберите Удалить имя для удаления связи контакта с группой лиц.
Выключение распознавания лиц
-
В правом верхнем углу приложения «Фотографии» выберите Подробнее … > Параметры.
-
Примечание: При отключении параметра «Люди» будут удалены все данные группы лиц, созданные в процессе распознавания лиц. При изменении этого параметра фотографии и видео останутся на устройстве. Если вы решите снова включить этот параметр, коллекция будет заново просканирована, а данные о группировке лиц сформируются заново.
Неизвестные запустили сервис для поиска пользователей «ВКонтакте» по фотографии SearchFace Статьи редакции
{«id»:58305,»url»:»https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface»,»title»:»\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u00ab\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\u00bb \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 SearchFace»,»services»:{«facebook»:{«url»:»https:\/\/www.facebook.com\/sharer\/sharer.php?u=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface»,»short_name»:»FB»,»title»:»Facebook»,»width»:600,»height»:450},»vkontakte»:{«url»:»https:\/\/vk.com\/share.php?url=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface&title=\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u00ab\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\u00bb \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 SearchFace»,»short_name»:»VK»,»title»:»\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435″,»width»:600,»height»:450},»twitter»:{«url»:»https:\/\/twitter.com\/intent\/tweet?url=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface&text=\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u00ab\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\u00bb \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 SearchFace»,»short_name»:»TW»,»title»:»Twitter»,»width»:600,»height»:450},»telegram»:{«url»:»tg:\/\/msg_url?url=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface&text=\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u00ab\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\u00bb \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 SearchFace»,»short_name»:»TG»,»title»:»Telegram»,»width»:600,»height»:450},»odnoklassniki»:{«url»:»http:\/\/connect.ok.ru\/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface»,»short_name»:»OK»,»title»:»\u041e\u0434\u043d\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u0438\u043a\u0438″,»width»:600,»height»:450},»email»:{«url»:»mailto:?subject=\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u00ab\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\u00bb \u043f\u043e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 SearchFace&body=https:\/\/vc.ru\/services\/58305-neizvestnye-zapustili-servis-dlya-poiska-polzovateley-vkontakte-po-fotografii-searchface»,»short_name»:»Email»,»title»:»\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u043f\u043e\u0447\u0442\u0443″,»width»:600,»height»:450}},»isFavorited»:false}
71 711 просмотров
Создание нейросети по распознаванию лиц на фотографиях из Вконтакте / Хабр
В этой статье будет рассказан опыт создания нейросети по распознаванию лиц, для сортировки всех фотографий из беседы ВК на поиск определённого человека. Без какого-либо опыта написания нейросетей и минимальными знаниями Python.
Введение
Есть у нас друг, которого зовут Сергей, который очень любит себя фотографировать в необычном образе и отправлять в беседу, а так же приправляет эти фотографии фирменными фразами. Так вот в один из вечеров в дискорде у нас появилась мысль — создать паблик в вк, куда мы могли бы постить Сергея с его цитатами. Первые 10 постов в отложку дались легко, но потом стало понятно, что перебирать руками все вложения в беседе — нет смысла. Так и было принято решение написать нейросеть для автоматизации этого процесса.
План
- Получить ссылки на фотографии из беседы
- Скачать фотографии
- Написание нейросети
Перед началом разработки
В статье не будут рассказаны базовые вещи, такие как установка Python и pip. А также хочется сказать, что это не написание нейросети с 0, а будет использоваться специальная библиотека, которая упростит решение конкретно этой задачи
1. Получение ссылок на фотографии
Так мы хотим получить все фотографии с беседы нам подходит метод messages.getHistoryAttachments, который возвращает материалы диалога или беседы.
С 15 февраля 2019 Вконтакте запретил доступ к messages, для приложений не прошедших модерацию. Из вариантов обхода могу предложить vkhost, который поможет получить токен от сторонних мессенджеров
С полученным токеном на vkhost можем, собирать нужный нам запрос к API, при помощи Postman. Можно конечно и без него всё заполнить ручками, но для наглядности будем использовать его
Заполняем параметры:
- peer_id — идентификатор назначения
Для беседы: 2000000000 + id беседы (можно увидеть в адресной строке).
Для пользователя: id пользователя. - media_type — тип материалов
В нашем случае photo
- start_from — смещение, для выборки нескольких элементов.
Пока что оставим пустым
- count — количество получаемых объектов
Максимум 200, столько и будем использовать
- photo_sizes — флаг для возвращение всех размеров в массиве
1 или 0. Мы используем 1
- preserve_order — флаг указывающий нужно ли возвращать вложения в оригинальном порядке
1 или 0. Мы используем 1
- v — версия vk api
1 или 0. Мы используем 1
Заполненные поля в Postman
Переходим к написанию кода
Для удобства весь код будет разбит на несколько раздельных скриптов
Будет использовать модуль json (для декодирования данных) и библиотеку requests (чтобы делать http запросы)
Листинг кода если в беседе/диалоге менее 200 фотографий
import json
import requests
val = 1 # Переменная для счётчика
Fin = open("input.txt","a") # Создаём файл для записи ссылок
# Отправляем GET запрос на API и записываем ответ в response
response = requests.get("https://api.vk.com/method/messages.getHistoryAttachments?peer_id=2000000078&media_type=photo&start_from=&count=10&photo_size=1&preserve_order=1&max_forwards_level=45&v=5.103&access_token=ВАШ_ТОКЕН")
items = json.loads(response.text) # Считываем ответ от сервера в формате JSON
# Так как по GET запросу сервер возвращает в каждом элементе массив с картинкой в разных размерах, будем перебирать всё циклом
for item in items['response']['items']: # Перебираем массив items
link = item['attachment']['photo']['sizes'][-1]['url'] # Записываем самый последний элемент, так как он самого максимального расширения
print(val,':',link) # В консоли выводим лог по проделанной работе
Fin.write(str(link)+"\n") # Записываем новую строку в файл
val += 1 # Увеличиваем значение счётчика
Если же фотографий более 200
import json
import requests
next = None # Переменная в которую будем записывать ключ смещения
def newfunc():
val = 1 # Переменная для счётчика
global next
Fin = open("input.txt","a") # Создаём файл для записи ссылок
# Отправляем GET запрос на API и записываем ответ в response
response = requests.get(f"https://api.vk.com/method/messages.getHistoryAttachments?peer_id=2000000078&media_type=photo&start_from={next}&count=200&photo_size=1&preserve_order=1&max_forwards_level=44&v=5.103&access_token=ВАШ_ТОКЕН")
items = json.loads(response.text) # Считываем ответ от сервера в формате JSON
if items['response']['items'] != []: # Проверка наличия данных в массиве
for item in items['response']['items']: # Перебираем массив items
link = item['attachment']['photo']['sizes'][-1]['url'] # Записываем самый последний элемент, так как он самого максимального расширения
print(val,':',link) # Лог перебора фотографий
val += 1 # Увеличиваем значение счётчика
Fin.write(str(link)+"\n") # Записываем новую строку в файл
next = items['response']['next_from'] # Записываем ключ для получения следующих фотографий
print('dd',items['response']['next_from'])
newfunc() # Вызываем функцию
else: # В случае отсутствия данных
print("Получили все фото")
newfunc()
Ссылки получили пора качать
2. Скачивание изображений
Для скачивания фотографий используем библиотеку urllib
import urllib.request
f = open('input.txt') # Наш файл с ссылками
val = 1 # Переменная для счётчика
for line in f: # Перебираем файл построчно
line = line.rstrip('\n')
# Скачиваем изображение в папку "img"
urllib.request.urlretrieve(line, f"img/{val}.jpg")
print(val,':','скачан') # В логи выводим сообщение о загрузке
val += 1 # Увеличиваем счётчик
print("Готово")
Процесс загрузки всех изображений не самый быстрый, тем более если фотографий 8330. Место под это дело тоже требуется, если фотографий по количеству как у меня и более, рекомендую освободить под это 1,5 — 2 Гб
Черновая работа закончена, теперь можно приступать к самому интересному — написанию нейросети
3. Написание нейросети
Просмотрев много различных библиотек и вариантов, было решено использовать библиотеку
Face Recognition
Что умеет ?
Из документации рассмотрим самые основные возможности
Поиск лиц на фотографиях
Может найти любое количество лиц на фото, даже справляется с размытыми
Идентификация лиц на фотографии
Может распознать кому принадлежит лицо на фотографии
Для нас самый подходящим способом будет являться идентификация лиц
Подготовка
Из требований к библиотеке необходим Python 3.3+ или Python 2.7
По поводу библиотек — будет использоваться выше упомянутая Face Recognition и PIL для работы с изображениями.
Официально библиотека Face Recognition не поддерживается на Windows, но у меня всё заработало. С macOS и Linux всё работает стабильно.
Объяснение происходящего
Для начала нам необходимо задать классификатор для поиска человека, по которому уже будет происходить дальнейшая сверка фотографий.
Рекомендую выбрать максимально чёткую фотографию человека в анфасПри загрузке фотографии библиотека разбивает изображения на координаты черт лица человека (нос, глаза, рот и подбородок)
Ну, а дальше дело за малым, остаётся только применять подобный метод к фотографии на которую хотим сравнить с нашим классификатором. После чего даём нейросети сравнить черты лиц по координатам.
Ну и собственно сам код:
import face_recognition
from PIL import Image # Библиотека для работы с изображениями
find_face = face_recognition.load_image_file("face/sergey.jpg") # Загружаем изображение нужного человека
face_encoding = face_recognition.face_encodings(find_face)[0] # Кодируем уникальные черты лица, для того чтобы сравнивать с другими
i = 0 # Счётчик общего выполнения
done = 0 # Счётчик совпадений
numFiles = 8330 # Тут указываем кол-во фото
while i != numFiles:
i += 1 # Увеличиваем счётчик общего выполнения
unknown_picture = face_recognition.load_image_file(f"img/{i}.jpg") # Загружаем скачанное изображение
unknown_face_encoding = face_recognition.face_encodings(unknown_picture) # Кодируем уникальные черты лица
pil_image = Image.fromarray(unknown_picture) # Записываем изображение в переменную
# Проверяем нашла ли нейросеть лицо
if len(unknown_face_encoding) > 0: # Если нашли лицо
encoding = unknown_face_encoding[0] # Обращаемся к 0 элементу, чтобы сравнить
results = face_recognition.compare_faces([face_encoding], encoding) # Сравниваем лица
if results[0] == True: # Если нашли сходство
done += 1 # Увеличиваем счётчик общего выполнения
print(i,"-","Нашли нужного человека !")
pil_image.save(f"done/{int(done)}.jpg") # Сохраняем фото с найденным человеком
else: # Если не нашли сходство
print(i,"-","Не нашли нужного человека!")
else: # Если не нашли лицо
print(i,"-","Лицо не найдено!")
Также есть возможность прогонять всё по глубинному анализу на видеокарте, для этого надо добавить параметр model= «cnn» и изменить фрагмент кода для изображения с котором хотим искать нужного человека:
unknown_picture = face_recognition.load_image_file(f"img/{i}.jpg") # Загружаем скачанное изображение
face_locations = face_recognition.face_locations(unknown_picture, model= "cnn") # Подключаем ускорение GPU
unknown_face_encoding = face_recognition.face_encodings(unknown_picture) # Кодируем уникальные черты лица
Результат
Без GPU. По времени нейросеть перебрала и отсортировала 8330 фотографий за 1 час 40 минут и при этом нашла 142 фотографии из них 62 с изображением нужного человека. Конечно бывали ложные срабатывания, на мемы и других людей.
C GPU. Времени на обработку заняло гораздо больше, 17 часов и 22 минуты и нашла 230 фотографий из которых 99 нужный нам человек.
В заключение можно сказать, что работа проделана была не зря. Мы автоматизировали процесс сортировки 8330 фотографий, что гораздо лучше чем перебирать это самому
Также можете скачать весь исходный код с github
Распознаем лица на фото с помощью Python и OpenCV / Хабр
В этой статье я хотел бы остановиться на алгоритмах распознавания лиц, а заодно познакомить вас с очень интересной и полезной библиотекой OpenCV. Уверен, что этот материал окажется полезным для новичков в этой области.
Что нам понадобится:
• Установленный Python 2.7 с библиотеками NumPy и PIL
• OpenCV 2-й версии
Здесь ссылка на материал по установке всех необходимых компонентов. Установка всего необходимого не составит труда.
Для начала давайте разберемся, как распознать лицо на фотографии. Во-первых, нужно найти, где на фото расположено лицо человека и не спутать его с часами на стене и кактусом на подоконнике. Казалось бы, простая задача для человека, оказывается не такой простой для компьютера. Для того, чтобы найти лицо мы должны выделить его основные компоненты, такие как нос, лоб, глаза, губы и т.д. Для этого будем использовать шаблоны (они же примитивы Хаара) на подобие таких:
Если шаблоны соответствуют конкретным областям на изображении, будем считать, что на изображении есть человеческое лицо. На самом деле подобных шаблонов гораздо больше. Для каждого из них считается разность между яркостью белой и черной областей. Это значение сравнивается с эталоном и принимается решение о том, есть ли здесь часть человеческого лица или нет.
Этот метод называется методом Виолы-Джонса (так же известен как каскады Хаара). Давайте представим, что у нас на фотографии не одно большое лицо, а много мелких. Если применить шаблоны ко всей картинке мы не найдем там лиц, т.к. они будут меньше шаблонов. Для того чтобы искать на всем фото лица разных размеров используется метод скользящего окна. Именно внутри этого окна и высчитываются примитивы. Окно как бы скользит по всему изображению. После каждого прохождения изображения окно увеличивается, чтобы найти лица большего масштаба.
Наглядно демонстрацию алгоритма можно посмотреть на этом видео:
И так мы нашли лицо на фотографии, но как определить, что это лицо именно того кого мы ищем? Для решения этой задачи будем использовать алгоритм Local Binary Patterns. Суть его заключается в том, что мы разбиваем изображение на части и в каждой такой части каждый пиксель сравнивается с соседними 8 пикселями. Если значение центрального пикселя больше соседнего, то пишем 0, в противном случае 1. И так для каждого пикселя у нас получается некоторое число. Далее на основе этих чисел для всех частей, на которые мы разбивали фотографию, считается гистограмма. Все гистограммы со всех частей объединяются в один вектор характеризующий изображение в целом. Если мы хотим узнать насколько похожи два лица, нам придется вычислить для каждого из них такой вектор и сравнить их. Рисунки ниже помогут лучше понять суть алгоритма:
Ну хорошо, давайте, наконец напишем немного кода. За основу я взял код из этой статьи.
# Импортируем необходимые модули
import cv2, os
import numpy as np
from PIL import Image
# Для детектирования лиц используем каскады Хаара
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2.CascadeClassifier(cascadePath)
# Для распознавания используем локальные бинарные шаблоны
recognizer = cv2.createLBPHFaceRecognizer(1,8,8,8,123)
Параметр cascadePath содержит имя файла с уже готовыми значениями для распознавания лиц. Этот файл можно взять из директории с OpenCV (opencv\build\etc\haarcascades\).
Далее создаем объект CascadeClassifier и объект распознавания лиц LBPHFaceRecognizer. На последнем остановимся поподробнее, точнее, на его параметрах. Первые два значения 1 и 8 характеризуют окрестности пикселя. Наглядно, что это такое можно продемонстрировать этой картинкой:
То есть первое число это радиус в котором мы выбираем пиксели, а второй число этих пикселей. Чем больше пикселей в окрестности точки мы возьмем, тем точнее будет наше распознавание.
Следующие параметры (8,8) характеризуют размеры областей на которые мы разбиваем исходное изображение с лицом. Чем оно меньше, тем больше будет таких областей и тем качественнее распознавание.
И наконец, последнее значение это параметр confidence threshold, определяющий пороговое значение для распознавания лица. Чем меньше confidence тем больше алгоритм уверен в том, что на фотографии изображено известное ему лицо. Порог означает, что когда уверенности мало алгоритм просто считает это лицо незнакомым. В данном случае порог равен 123.
Идем дальше. Напишем функцию, которая находит по определенному пути во всех фотографиях лица людей и сохраняет их.
def get_images(path):
# Ищем все фотографии и записываем их в image_paths
image_paths = [os.path.join(path, f) for f in os.listdir(path) if not f.endswith('.happy')]
images = []
labels = []
for image_path in image_paths:
# Переводим изображение в черно-белый формат и приводим его к формату массива
gray = Image.open(image_path).convert('L')
image = np.array(gray, 'uint8')
# Из каждого имени файла извлекаем номер человека, изображенного на фото
subject_number = int(os.path.split(image_path)[1].split(".")[0].replace("subject", ""))
# Определяем области где есть лица
faces = faceCascade.detectMultiScale(image, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# Если лицо нашлось добавляем его в список images, а соответствующий ему номер в список labels
for (x, y, w, h) in faces:
images.append(image[y: y + h, x: x + w])
labels.append(subject_number)
# В окне показываем изображение
cv2.imshow("", image[y: y + h, x: x + w])
cv2.waitKey(50)
return images, labels
Для примера я использовал БД лиц под названием Yale Faces. В ней есть 15 человек с разными выражениями лиц на каждой фотографии.
Имя каждого файла в этой БД выглядит следующим образом: subject01.sad. Сначала идет слово subject, далее порядковый номер человека, а после характеристика фото. Например, характеристика sad означает грустное лицо, happy веселое и т.п.
Функция get_images считывает каждую фотографию, кроме тех, что с окончанием .happy и выделяет ту область, где находится лицо. Фотографии с веселым выражением лица будем использовать на следующем шаге для распознавания, это будет контрольная выборка, т.е. те фото на которых мы будем проверять качество распознавания.
Так же из каждого названия файла извлекается номер человека на фотографии и сохраняется список labels. Каждой фотографии в итоге будет сопоставлен этот номер.
Функция faceCascade.detectMultiScale() определяет области на фотографии, где есть человеческие
лица. Она возвращает список с параметрами [x,y,w,h] для каждого найденного лица. Эти
параметры описывают прямоугольную область в том месте, где нашлось лицо.
Теперь давайте разберемся с параметрами функции:
image – исходное изображение
scaleFactor – определяет то, на сколько будет увеличиваться скользящее окно поиска на каждой итерации. 1.1 означает на 10%, 1.05 на 5% и т.д. Чем больше это значение, тем быстрее работает алгоритм.
minNeighbors — Чем больше это значение, тем более параноидальным будет поиск и тем чаще он будет пропускать реальные лица, считая, что это ложное срабатывание. Оптимальное значение 3-6.
minSize – минимальный размер лица на фото. 30 на 30 обычно вполне достаточно.
Ну что же, теперь мы можем создать набор лиц и соответствующих им меток. Давайте научим программу распознавать эти лица.
# Путь к фотографиям
path = './yalefaces'
# Получаем лица и соответствующие им номера
images, labels = get_images(path)
cv2.destroyAllWindows()
# Обучаем программу распознавать лица
recognizer.train(images, np.array(labels))
Указываем путь к нашим фото, получаем список с фотографиями и метками. А дальше запускаем нашу функцию тренировки с помощью алгоритма LBP. Ничего сверхъестественного в ней нет, просто передаем ей значения, полученные после запуска функции get_images(). Все остальное программа сделает сама.
И так у нас есть обученный «распознаватель» и есть набор счастливых лиц. Теперь нам необходимо попросить алгоритм распознать эти счастливые лица.
# Создаем список фотографий для распознавания
image_paths = [os.path.join(path, f) for f in os.listdir(path) if f.endswith('.happy')]
for image_path in image_paths:
# Ищем лица на фотографиях
gray = Image.open(image_path).convert('L')
image = np.array(gray, 'uint8')
faces = faceCascade.detectMultiScale(image, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
for (x, y, w, h) in faces:
# Если лица найдены, пытаемся распознать их
# Функция recognizer.predict в случае успешного распознавания возвращает номер и параметр confidence,
# этот параметр указывает на уверенность алгоритма, что это именно тот человек, чем он меньше, тем больше уверенность
number_predicted, conf = recognizer.predict(image[y: y + h, x: x + w])
# Извлекаем настоящий номер человека на фото и сравниваем с тем, что выдал алгоритм
number_actual = int(os.path.split(image_path)[1].split(".")[0].replace("subject", ""))
if number_actual == number_predicted:
print "{} is Correctly Recognized with confidence {}".format(number_actual, conf)
else:
print "{} is Incorrect Recognized as {}".format(number_actual, number_predicted)
cv2.imshow("Recognizing Face", image[y: y + h, x: x + w])
cv2.waitKey(1000)
В цикле опять определяем расположение лица на каждом фото с окончанием .happy. Все параметры и процедуры такие же, как и на предыдущем этапе.
Для каждого найденного лица запускаем функцию recognizer.predict(), возвращающую номер-идентификатор субъекта, который предположительно находится на фото, а так же параметр confidence. Далее сравниваем значение, которое нам вернула функция с реальным номером субъекта, если они равны, распознавание прошло успешно.
Ну, вот и все, дальше в консоль выводятся результаты распознавания для каждой фотографии из контрольной выборки.
Исходный код программы можно найти здесь.
как найти человека по фотке в FB
Поиск по фото Фейсбук — трудная задача, требующая от исполнителя специального подхода и сноровки. Раньше такую функцию предоставлял FindFace, но его быстро заблокировали, а сами разработчики соцсети выступают против подобных опций. Это означает, что в приложении на ПК или телефоне ее нет. Несмотря на отсутствие официальных методов, найти человека по фото в Фейсбук все-таки реально. Как вариант — применение присвоенного номера, использование Гугл или специальных сервисов. Каждый из этих методов мы рассмотрим ниже.
Поиск человека по фото в Facebook: обзор способов
Сегодня нет официальных программ, позволяющих быстро найти пользователя по фотографии в Fb. Но существует ряд обходных путей, имеющих небольшую эффективность, но при удачном стечении обстоятельств позволяющих отыскать нужного пользователя.
Способ №1: поиск через Гугл
При желании можно найти фотографию в Фейсбук через поисковую сеть. Для этого сделайте следующие шаги:
- Перейдите по ссылке images.google.com.
- Кликните по картинке с изображением фотоаппарата.
- Укажите ссылку на изображение в Интернете, путь к файлу или переместите документ прямо в форму.
- Дождитесь выдачи результата.
- Изучите доступные ссылки, которые ведут на Facebook.
Этот метод может сработать или дать результат только частично. Для получения более точной информации удалите текст из окна поиска и замените его на site:facebook.com, а после жмите Ввод. Такой способ позволит решить вопрос исключительно для социальной сети.
Способ №2: через специальный сервис
Альтернативный вариант — поиск по фото Фейсбук с помощью специальных интернет-площадок. Одним из лучших решений считается применение tineye.com. Сделайте следующие шаги:
- Войдите по ссылке tineye.com
- Добавьте или вставьте URL картинки.
- Жмите на поиск.
С помощью этого сервиса можно найти все упоминания о фотографии в Интернете, если они имеются.
Способ №3: с помощью числового идентификатора
Один из способов как найти человека по фото в Фейсбук — применение числового идентификатора, присваиваемого каждой фотографии. Они являются частью имени документа и позволяют найти источник изображения в социальной сети. В зависимости от ситуации картинка может быть выставлена на профиле нужного пользователя, быть помеченной или находиться в учетной записи.
Сделайте следующие шаги:
- Кликните правой кнопкой мышки по фото, которое необходимо найти.
- Выберите пункт Открыть в новой вкладке в Гугл Хром. При использовании другого веб-браузера выберите иные варианты, к примеру, Просмотре изображений, фото и т. д.
- Отыщите три последовательных числа в имени файла или адресной строке.
- Выберите среднюю числовую последовательность. Этот идентификатор можно использовать для поиска фото в Facebook.
- Вставьте ссылку facebook.com/photo.php?fbid= в строку URL веб-проводника.
- Добавьте идентификационный номер сразу после знака «равно» (пробелы не ставьте).
- Жмите Ввод, чтобы посмотреть фотографию и найти профиль, где она добавлена.
Поиск по фото в Фейсбук таким способом не дает результата, если изображение защищено настройками конфиденциальности и не является общедоступным. Кроме того, контент не будет виден заблокированному ранее пользователю.
Итоги
Помните, что поиск по фото в Фейсбук — лотерея, ведь гарантировать результат никто не сможет. Но и сдаваться раньше времени нет смысла, ведь с помощью указанных методов многие добиваются результата и находят нужного человека в глобальной сети.
Обратный поиск изображения (сом) и поиск лиц в Интернете
Обратный поиск изображений — поиск людей по фотографиям
Каждые несколько дней я получаю сообщение от пользователей со всего мира с более или менее одним и тем же вопросом: у меня есть фото человека, которого я ищу. Вы можете помочь мне найти этого человека в Интернете? (Обычно это называется « обратный поиск изображений », или « людей ищут » с фотографиями, или « поиск похожих изображений »).
К сожалению, не могу. Чтобы использовать распознавание лиц для поиска фотографий, мне нужен доступ ко всем изображениям всех людей в этом мире. Такая база данных может быть у какой-нибудь разведывательной службы. Я не.
Вам нужен доступ к огромной коллекции изображений и очень мощная вычислительная мощность. Это могут сделать только компании с огромными ресурсами. Поэтому какое-то время такой возможностью был только Google. Их поиск изображений не использует распознавание лиц (afaik), но их технология масштабно-инвариантных функций хорошо работает и с изображениями лиц.
Но теперь уже не только Google предлагает такую услугу! Итак, вот список поисковых систем, которые могут сравнивать изображения в достаточно большой базе данных (пожалуйста, отправьте отзыв, если вы знаете больше):
- Поиск картинок Google
Просто загрузите фотографию в поиск картинок Google, и она найдет похожие изображения. Поскольку Google владеет, вероятно, самой большой базой данных изображений в сети, велики шансы, что вы найдете эту (или хотя бы похожую) фотографию.
- Bing Image Search
Bing теперь также предлагает поиск изображений (с использованием загрузки фотографий или URL), но его труднее найти, чем функция Google.Просто воспользуйтесь приведенной выше ссылкой, затем щелкните значок камеры и затем «просмотрите».
- ImageRaider (ссылка в настоящее время не работает)
В настоящее время использует Google, Bing и Яндекс для обратного поиска изображений, используя IncandescentAPI. Очень полезный сайт для людей, использующих мобильные устройства, и поэтому не может легко использовать ссылки выше.
Выберите изображение, которое хотите найти, а затем щелкните значок увеличительного стекла в правом нижнем углу этого изображения.Тогда будут показаны похожие изображения. Так что просто загрузите и закрепите изображение, которое хотите найти, чтобы увидеть, есть ли похожие лица на Pinterest.
- PimEyes
Использует настоящие алгоритмы распознавания лиц для сравнения представленной фотографии с изображениями около 10 миллионов человек. База данных, очевидно, содержит множество изображений в свободном доступе из Интернета, включая Википедию. Результаты неплохие даже для повернутых лиц с низким разрешением.
- Berify Поиск украденных изображений
И последнее, но не менее важное. Я хотел бы обратить ваше внимание на эту новую поисковую систему обратного изображения (которая, похоже, является побочным продуктом социальной сома).Официально созданный для поиска «украденных» изображений, он довольно мощный и отличается от всех других вышеупомянутых. На мой взгляд, их алгоритм сопоставления изображений использует больше информации о форме и цвете, чем другие движки. Я имею в виду, что если вы выполните обратный поиск изображения блондинки с зелеными глазами и синей рубашкой, вы получите такие изображения с этим движком. Другие двигатели, представленные выше, могут дать вам совершенно другие результаты, как у рыжеволосого парня в зеленой рубашке. Итак, что бы ни делали эти ребята из Berify, я думаю, стоит попробовать эту catfish для поиска изображений (используйте бесплатную пробную версию).
Очень часто люди присылают фотографии от тех, кто связался с ними, через какое-то чат-сообщество или партнерскую платформу. Они хотят знать, настоящий ли этот человек или это так называемый «мошенник», используя чужие фотографии. Кажется, это большая проблема под названием « романтическая афера ». Некоторые сайты пытаются помочь пользователям, ища изображения известных мошенников:
Сводка
Общий рейтинг пользователей по теме поиска обратного изображения путем отправки изображений в поисковые системы обратного изображения
Обзор пользователей
4.1 (105 голосов)Теперь, когда эта тема не полностью связана с распознаванием лиц, я создал страницу специально для перечисления всех связанных инструментов и ресурсов. Если вы хотите узнать больше о обратном поиске изображений, посетите Ресурсы обратного поиска изображений!
Другие интересные демонстрации с использованием технологии распознавания лиц / определения лиц:
- Spectrico из Болгарии.
Демонстрация распознавания возраста, пола и расы. - CelebsLike.Me от Microsoft.
На кого из номинантов «Оскара» вы похожи? Приложение для сопоставления лиц от Microsoft, использующее новую технологию глубокого обучения. Загрузите фотографию, и вы увидите, кто из номинантов на Оскар 2016 года похож на человека на этой фотографии. - На сколько лет я выгляжу? от Microsoft.
Вы можете загрузить фотографию с любым количеством лиц на ней, и сайт ответит, отметив все найденные лица вместе с оценкой возраста каждого человека.
Не удивляйтесь, если ваш предполагаемый возраст будет далек от реальности (точность ± 15 лет — мое приблизительное предположение), но детектор лиц кажется очень точным.Для этого Microsoft использует свою веб-службу Project Oxford, так что вы можете проверить это. - Детектор лиц в реальном времени 2.0 от Александра Тельных. Обнаружение лиц во фронтальном ракурсе на цифровых фото и в видеопотоках, обнаружение лиц в наклонной перспективе. Позволяет передние объекты под углом ± 15 ° от горизонтали, обнаружение лиц в перспективе профиля, демонстрация локализации глаз, демонстрация отслеживания лиц, демонстрация фильтрации телесного цвета.
- Отправьте изображения лиц в онлайн-программу поиска лиц Университета Иллинойса
- Перетащите или загрузите изображения в искатель лиц ELGOM3A, используя отслеживание.js Библиотека Javascript.
Найди свое лицо двойной
ПОИСК Близнецов незнакомцев
Как мне найти моего близнеца-незнакомца?
A: Сначала загрузите изображение вашего лица в стиле паспорта (смотрящего прямо в камеру), затем завершите регистрацию, выбрав свою страну, пол, имя пользователя, пароль и адрес электронной почты (который мы будем использовать только для связи с вами ). После завершения этого шага вы можете купить кредиты на поиск AI менее чем за 50 центов каждый.После успешной оплаты ваше основное изображение профиля автоматически отправляется на анализ и мгновенно сравнивается с двумя миллионами других профилей пользователей. 100+ ваших лучших результатов помещаются в папку поиска AI, и вы можете наслаждаться ими.
Загрузка другого изображения и повторный поиск выявят еще больше совпадений.
Как только вы обнаружите кого-то, кто похож на вас, вы можете пойти дальше, добавив его в свою папку «Мои близнецы» и предупредив (отметив) о своем интересе к подключению.
Полезно отметить, что после регистрации вы можете загрузить еще пять фотографий в галерею своего профиля, чтобы помочь вашему близнецу сравнить свое лицо с вашим.
Сколько времени нужно, чтобы найти моего близнеца-незнакомца?
A: Использование TWINSTRANGERS.COM — один из лучших и самых быстрых способов найти своего TwinStranger. Тысячи людей регистрируются каждую неделю, и у вас есть лучший шанс найти его / ее здесь. Даже если вы сначала не найдете никого, кто будет вашим «точным» лицевым двойником, тот факт, что все больше и больше людей регистрируются, означает, что ваш лицевой двойник может обнаружить вас.На сегодняшний день у нас было бесчисленное количество матчей на TS. Посетите нашу страницу в Facebook, чтобы увидеть последние пары Twin Stranger. Помните, что чем больше у вас фотографий в галерее профиля, тем легче вашему Близнецу-незнакомцу будет вас найти, И вы узнаете, что ваш Близнец-незнакомец идеально подходит!
Могу ли я что-нибудь сделать, чтобы ускорить процесс поиска моего близнеца-незнакомца?
A: Да! Убедитесь, что мы можем четко видеть вас на ваших фотографиях. Ваш Близнец-незнакомец никогда не сможет найти вас, если ваша фотография слишком темная, размытая, сделана под странным углом, имеет фильтр или особенности, на которых вы рисуете лицо, или на ней есть другие люди.(посмотрите наше видео по этому поводу).
Вы можете загрузить 5 фотографий в свою галерею, однако для сравнения AI используется только первое изображение. Убедитесь, что ваше первое изображение — это невозмутимое лицо, сделанное прямо перед вами (не вверху и не внизу). Пожалуйста, не прячьте лицо солнцезащитными очками, шляпами или шарфами — каждый дюйм вашего лица важен, чтобы быть видимым, особенно для поиска AI.
И последнее, что вы можете сделать, — это распространить информацию. Чем больше людей вы расскажете о TS, тем больше шансов, что ваш незнакомец-близнец или их друг зарегистрируются и обнаружат вас!
Как я могу изменить свой аватар?
A: Войдите в свой аккаунт.Щелкните «Мой профиль». В разделе «Загрузите изображения» щелкните первое поле. Появится вариант загрузки. Примечание: изображение вашего профиля, первое изображение, которое вы загружаете в свою галерею изображений, является наиболее важным, поскольку это изображение, которое наше программное обеспечение AI использует в своем анализе.
Как мне связаться с человеком, которого я считаю своим близнецом-незнакомцем?
A : Если вы думаете, что нашли близнецов-незнакомцев и хотели бы поговорить с ними, нажмите кнопку «подключиться» (кнопка «подключиться» появляется после того, как вы «пометили» кого-то в папке «Мои близнецы». ).Если они тоже нажмут кнопку «Подключиться», оба ваших адреса электронной почты будут открыты друг другу. Отправьте им электронное письмо, и кто знает, к чему это может привести …
Что, если они не хотят со мной разговаривать?
A: Иногда некоторые Незнакомцы-Близнецы рады просто увидеть вашу фотографию. Это нас тоже огорчает 🙁
Но не волнуйтесь! Говорят, что у нас в мире семь живых близнецов-незнакомцев, так что, надеюсь, найдется один, который хотел бы соединиться.
ПОДПИСКА
Почему мои фотографии не загружаются?
A: Если у вас возникли проблемы с фотографиями, у нас есть некоторые спецификации, которые нам нужны для ваших изображений, в частности размер (МЕНЕЕ 2 МБ).См. Руководство здесь: https://youtu.be/xW56BHnE3ik
ПОДПИСЬ
Я забыл свой пароль.
A: Если вы забыли свой пароль, нажмите ссылку «Забыли пароль?» Под ЛОГИН на странице входа. Вы получите электронное письмо с инструкциями по изменению пароля.
Я забыл свое имя пользователя.
A: Не волнуйтесь, вы также можете войти в систему, используя адрес электронной почты, на который вы зарегистрировали свою учетную запись.После этого вы увидите свое имя пользователя в левом верхнем углу рядом с фотографией вашего профиля.
Я забыл свой адрес электронной почты, с которого я регистрировался, вы можете мне помочь?
A: Если вы забыли свое имя пользователя и адрес электронной почты, использованные для этой учетной записи, вам придется повторно зарегистрироваться.
ЧЛЕНСТВО, ОПЛАТА ЗАКАЗА И БЕЗОПАСНОСТЬ
Сколько стоит членство в Twin Strangers?
Членство БЕСПЛАТНО…! Нет никакой платы за загрузку изображения и регистрацию. Вам не нужно покупать кредиты AI. Загрузив свое изображение и зарегистрировавшись, другие пользователи смогут вас найти.
Какой способ оплаты вы принимаете за услугу сканирования AI?
A: Мы принимаем карты Visa, MasterCard и American Express. Мы также принимаем оплату через Paypal.
Безопасны ли близнецы-незнакомцы?
A: Все подключения к нашему веб-сайту зашифрованы с использованием SSL для обеспечения вашей конфиденциальности и безопасности данных.Мы НЕ храним никаких данных о кредитных картах, и вся обработка кредитных / дебетовых карт осуществляется через зашифрованные SSL-соединения с финансово регулируемым платежным шлюзом. Мы используем Stripe в качестве предпочтительного поставщика платежных шлюзов, гарантируя безопасность и надежность всех кредитных / дебетовых транзакций.
ПРОЩАЙТЕ
Как мне удалить свою учетную запись?
A: Нам будет жаль, что вы уйдете, однако вы можете удалить свою учетную запись в любое время.Просто войдите в свой профиль и нажмите МОЙ АККАУНТ вверху. Следуй инструкциям. ПРИМЕЧАНИЕ. Вся информация будет удалена без возможности восстановления. Нет отмены.
Почему моя учетная запись была удалена?
A: Цель Twinstrangers.com — найти человеческих двойников в любой точке мира. Мы не ищем двойника кошки, руки, дьявола, чашки чая или чего-либо еще, кроме человеческого лица. Если на фото в вашем профиле нет человеческого лица, ваш аккаунт будет удален.Аккаунты с откровенным содержанием также будут удалены. Вы не получите уведомления и не получите возмещение.
100000 бесплатных лиц, созданных с помощью искусственного интеллекта, для ваших дизайнов
Для большинства дизайн-проектов и презентаций общей частью является поиск фотографий людей. Дизайнеры стремятся к качественным изображениям, которые также разнообразны, бесплатны и легальны. Более того, это часто означает тратить драгоценное время на поиск подходящего фотоконтента по всему Интернету.Сегодня все стало намного проще: в помощь запущен новый бесплатный ресурс Generated Photos . Он имеет разнообразную библиотеку из 100000 невероятно реалистичных лиц, созданных искусственным интеллектом. Присоединяйтесь к выпуску на Product Hunt или узнайте подробности прямо здесь.
Лица, созданные с помощью искусственного интеллекта
созданных фотографий — это бесплатный ресурс из 100 тысяч лиц, который можно использовать для различных творческих целей. Что делает их особенными, так это то, что все бесплатные изображения были полностью созданы искусственным интеллектом.Ни один из этих людей не настоящий!
Фактически, это веха, которой творческая команда решила поделиться на пути к конечной цели: созданию простого API, который может создавать бесконечное разнообразие фотоконтента. Часть процесса — обучение и уточнение генеративных моделей. Итерации проходят быстро, хотя еще не все идеально. Так что вы также повеселитесь с пакетом фотографий, созданных AI. Когда вы видите лицо, которое немного «неестественно», просто расслабьтесь.
Данные внутреннего обучения
Все мы знаем, что будущее временами может расстраивать.Вот почему команда сделала все возможное, чтобы обеспечить личную безопасность:
- Все данные для обучения были сняты собственными силами и полностью выпущены на модели.
- Изображения не были взяты со стандартных носителей или из Интернета.
Такой подход требует тысячи часов труда, но, в конце концов, оно того стоит!
Характеристики
Особенности этих лиц:
- Постоянное освещение
- Единый размер
- Диапазон углов, позиций
- Диапазон мимики
- Разнообразие национальностей
- Все возрасты
- Все формы лица
Нет авторских прав
Сделайте так, чтобы ваш следующий макет, презентация или веб-сайт отлично смотрелся с этими свежими лицами.Никаких авторских прав, лицензионных отчислений или других юридических проблем, о которых стоит беспокоиться. Все можно использовать бесплатно при условии, что вы включите указание ссылки на created.photos, чтобы больше людей могли нас найти. В настоящее время этих лиц доступны для некоммерческого использования только .
Как использовать
Бесплатные изображения в пакете пригодятся для:
- Дизайн пользовательского интерфейса для веб- и мобильных приложений
- целевых страниц
- электронных и информационных бюллетеней
- презентации
- образовательных проекта, раздаточных материалов и рабочих листов
- аватарки пользователей
Итак, ресурс позволяет авторам наполнить свои творческие проекты красивыми фотографиями людей, которые никогда не будут отнимать время и деньги в реальной жизни.
Следующий этап: чего ожидать в ближайшее время
Проект в стадии реализации: сейчас команда работает над одним простым API, который станет еще более приближенным шагом к бесконечному разнообразию фотографий. Это позволит систематизировать и искать всю базу бесплатных изображений по мета свойствам и физическим свойствам.
Загрузите пакет лиц, созданных искусственным интеллектом, и получайте удовольствие! Или присоединяйтесь к обсуждению на Product Hunt.
ИИ, помогающий создателям, больше не является чем-то фантастическим.
Face — Find Similar (Когнитивные службы Azure)
Заданный запрос faceId лица для поиска похожих лиц из массива faceId, списка лиц или большого списка лиц. Массив faceId содержит лица, созданные Face — Detect, срок действия которых истекает через 24 часа после создания. FaceListId создается FaceList — Create, содержащим persistedFaceIds, срок действия которых не истекает. И «largeFaceListId» создается LargeFaceList — Create, содержащим persistedFaceIds, срок действия которых также не истекает.В зависимости от входных данных возвращенный список похожих лиц содержит идентификаторы лиц или persistedFaceIds, ранжированные по сходству.
Find Similar имеет два режима работы: matchPerson и matchFace. matchPerson — это режим по умолчанию, в котором он пытается найти лица одного и того же человека, насколько это возможно, с использованием внутренних пороговых значений одного человека. Полезно найти другие фотографии известных людей. Обратите внимание, что будет возвращен пустой список, если никакие лица не пройдут внутренние пороги. Режим matchFace игнорирует пороговые значения для одного и того же человека и все равно возвращает ранжированные похожие лица, даже если сходство низкое.Его можно использовать в таких случаях, как поиск лиц, похожих на знаменитостей.
«Модель распознавания», связанная с лицом запроса faceId, должна быть такой же, как «Модель распознавания», используемая целевым массивом faceId, списком лиц или большим списком лиц.
В этой статье
POST {Endpoint} /face/v1.0/findsimilars
Параметры URI
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
Ocp-Apim-Subscription-Key | Правда |
Тело запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
faceId | Правда | FaceId лица запроса.Пользователь должен сначала вызвать Face — Detect, чтобы получить действительный faceId. Обратите внимание, что этот идентификатор лица не сохраняется и истекает через 24 часа после обнаружения вызова . | |
faceIds | Массив кандидатов faceIds. Все они созданы Face — Detect, и срок действия идентификаторов лиц истекает через 24 часа после вызова обнаружения. Количество faceIds ограничено 1000. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | ||
faceListId | Существующий определенный пользователем уникальный список лиц-кандидатов, созданный в Face List — Create a Face List. Список лиц содержит набор persistedFaceIds, которые сохраняются и никогда не истекают. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | ||
largeFaceListId | Существующий определенный пользователем уникальный список кандидатов большого размера, созданный в LargeFaceList — Create.Большой список лиц содержит набор persistedFaceIds, которые сохраняются и никогда не истекают. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | ||
maxNumOfCandidatesReturned | Количество возвращенных топовых похожих лиц. Допустимый диапазон: [1, 1000]. | ||
Режим | Режим поиска похожих лиц.Это может быть matchPerson или matchFace. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 ОК | Успешный вызов возвращает массив наиболее похожих лиц, представленных в faceId, если входным параметром является faceIds, или persistedFaceId, если входным параметром является faceListId. | |
Другие коды состояния | Ответ об ошибке. |
Безопасность
Ocp-Apim-ключ подписки
Тип:
apiKey
В:
заголовок
Примеры
Пример поиска похожих результатов
Образец запроса
POST {Endpoint} /face/v1.0/findsimilars
Ocp-Apim-Subscription-Key: {API-ключ}
{
"faceId": "c5c24a82-6845-4031-9d5d-978df9175426",
"largeFaceListId": "список_выборок",
"maxNumOfCandidatesReturned": 1,
"mode": "matchPerson"
}
Пример ответа
[
{
"persistedFaceId": "015839fb-fbd9-4f79-ace9-7675fc2f1dd9",
«уверенность»: 0.82
}
]
Определения
Ошибка API
Информация об ошибке, возвращаемая API
Имя | Тип | Описание |
---|---|---|
ошибка | Тело ошибки. |
Ошибка
Тело ошибки.
Имя | Тип | Описание |
---|---|---|
код | ||
сообщение |
FindSimilarMatchMode
Режим поиска похожих лиц.Это может быть matchPerson или matchFace.
Имя | Тип | Описание |
---|---|---|
matchFace | ||
matchPerson |
FindSimilarRequest
Тело запроса на поиск аналогичной операции.
Имя | Тип | Описание |
---|---|---|
faceId | FaceId лица запроса.Пользователь должен сначала вызвать Face — Detect, чтобы получить действительный faceId. Обратите внимание, что этот идентификатор лица не сохраняется и истекает через 24 часа после обнаружения вызова . | |
faceIds | Массив кандидатов faceIds. Все они созданы Face — Detect, и срок действия идентификаторов лиц истекает через 24 часа после вызова обнаружения. Количество faceIds ограничено 1000. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | |
faceListId | Существующий определенный пользователем уникальный список лиц-кандидатов, созданный в Face List — Create a Face List. Список лиц содержит набор persistedFaceIds, которые сохраняются и никогда не истекают. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | |
largeFaceListId | Существующий определенный пользователем уникальный список кандидатов большого размера, созданный в LargeFaceList — Create.Большой список лиц содержит набор persistedFaceIds, которые сохраняются и никогда не истекают. Параметр faceListId, largeFaceListId и faceIds не следует указывать одновременно. | |
maxNumOfCandidatesReturned | Количество возвращенных топовых похожих лиц. Допустимый диапазон: [1, 1000]. | |
Режим | Режим поиска похожих лиц. Это может быть matchPerson или matchFace. |
Подобные лица
Тело ответа для операции по поиску подобного лица.
Имя | Тип | Описание |
---|---|---|
уверенность | Уверенность в подобии лица кандидата. Чем выше доверие, тем больше похоже. Диапазон между [0,1]. | |
faceId | FaceId лица кандидата при поиске по faceIds.FaceId создается Face — Detect и истекает через 24 часа после обнаружения звонка | |
persistedFaceId | PersistedFaceId лица кандидата при поиске по faceListId. persistedFaceId в списке лиц сохраняется и не истекает. Как показано в ответе ниже |
Найдите фото в Интернете
Перейти к основному содержаниюФорма поиска
Поиск
- Дом
- Государственные символы
- Амфибии Искусство | Драма Астрономия Награды | Признание Птицы Столицы Герб Цвета Культурное наследие Танец | Музыка Динозавры | Окаменелости Собаки | Кошки Рыба | Водная жизнь Флаги Цветы Еда | сельское хозяйство Драгоценные камни | Драгоценные камни Исторический | Культовые люди Праздники | События Лошади Насекомые Языки | Поэзия Млекопитающие Военные | Огнестрельное оружие Минералы | Горные породы Девизы Музеи Имя Происхождение Никнеймы Растения Кварталы Железные дороги | Транспортные средства Рептилии Уплотнения Почвы Песни Спортивный Шотландки Театры Под угрозой Деревья Без категории Суда | Самолет
- Национальные символы