4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как мы учили нейронную сеть распознавать платья и туфли

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

Исследователи ВШЭ предложили новый метод распознавания людей на видео с помощью глубокой нейронной сети. Подход не требует большого числа фотографий, он позволяет значительно повысить точность распознавания по сравнению с ранее известными аналогами, даже если доступна всего одна фронтальная фотография человека. Результаты работы опубликованы в статьях «Fuzzy Analysis and Deep Convolution Neural Networks in Still-to-video Recognition » и «Unconstrained Face Identification Using Maximum Likelihood of Distances Between Deep Off-the-shelf Features ».

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

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

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

«Сеть может со 100% точностью распознать, например, известного актера (число изображений которого в сети исчисляются миллионами). Но это совсем не значит, что при переносе знаний, накопленных в нейронной сети, она адаптируется и распознает человека, для которого в качестве образца доступна только одна фотография», — поясняет профессор кафедры информационных систем и технологий НИУ ВШЭ в Нижнем Новгороде Андрей Савченко.

Для того, чтобы решить эту задачу, исследователи ВШЭ использовали теорию нечетких множеств и теорию вероятности. Они разработали алгоритм, который позволяет существенно повысить точность (на 2-6% по сравнению с ранее проведенными экспериментами) идентификации лиц по видео в режиме реального времени при наличии ограниченного числа изображений. Это решение работает с нейросетевыми архитектурами VGGFace, VGGFace2, ResFace и LightCNN.

В качестве тестовой базы исследователи использовали несколько традиционных наборов данных для оценки методов распознавания лиц на видео – IJB-A (IARPA Janus Benchmark A) и YTF (YouTube Faces). Эти наборы включали находящиеся в свободном доступе изображения известных людей (актеры, политики, общественные деятели), которые собирались из открытых источников в неконтролируемых условиях в разное время. Алгоритм должен был распознать лица на видео с YouTube, используя в качестве образцов несколько фотографий тех же людей из другого набора данных – LFW (Labeled Faces in the Wild). В LFW использовалось более высокое разрешение, а сами фотографии были сделаны в разное время, начиная с 1970-х до 2010-х годов.

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

«Алгоритм оценивает насколько один кадр ближе к одному человеку, другой — к другому. Затем сравнивает, насколько похожи эти два человека между собой. После чего добавляет третьего человека и оценивает, с кем он ближе — с первым или вторым. Исходя из этой близости, еще раз корректирует ошибки распознавания», — говорит профессор Савченко.

Сейчас этот алгоритм уже реализован для стационарных компьютеров на Python, что позволяет в фотоальбомах находить и группировать лица разных людей, оценивать год рождения, пол и другие параметры. Разработан прототип приложения для Android, которое определяет возраст и пол людей на фотографиях и видео. Анализ фото-галереи дает возможность автоматически оценить степень социальной активности пользователя, выделить его близких друзей и родственников. Для современных смартфонов прототип приложения обрабатывает 15 кадров в секунду. Исследователи утверждают, что благодаря разработанному алгоритму распознание лиц может происходить точнее.

Российские ученые предложили новый метод распознавания людей на видео с помощью глубокой нейронной сети. Подход не требует большого числа фотографий, он позволяет значительно повысить точность распознавания по сравнению с ранее известными аналогами, даже если доступна всего одна фронтальная фотография человека. Результаты работы опубликованы в журналах Expert Systems with Applications () и Optical Memory and Neural Networks ().

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

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

В качестве тестовой базы исследователи использовали несколько традиционных наборов данных для оценки методов распознавания лиц на видео – IJB-A (IARPA Janus Benchmark A) и YTF (YouTube Faces). Эти наборы включают в себя находящиеся в свободном доступе изображения известных людей (актеров, политиков, общественных деятелей), которые собирались из открытых источников в неконтролируемых условиях в разное время. Алгоритм должен был распознать лица на видео с YouTube, используя в качестве образцов несколько фотографий тех же людей из другого набора данных – LFW (Labeled Faces in the Wild). В LFW использовалось более высокое разрешение, а сами фотографии были сделаны в разное время, начиная с 1970-х до 2010-х годов.

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

«Алгоритм оценивает, насколько один кадр ближе к одному человеку, другой — к другому. Затем сравнивает, насколько похожи эти два человека между собой. После чего добавляет третьего человека и оценивает, с кем он ближе — с первым или вторым. Исходя из этой близости, еще раз корректирует ошибки распознавания», — говорит профессор Савченко.

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

Современные техники распознавания лиц достигли впечатляющих результатов при работе с изображениями лиц среднего и большого размера, однако эффективность работы с малыми изображениями неудовлетворительна . Главная трудность в распознавании лиц малого размера (к примеру, размером 10х10 пикселей) состоит в недостатке деталей лица, отличающих его от заднего плана. Другая проблема заключается в том, что современные методы распознавания лиц строятся на основе свёрточных нейросетей и используют для представления лица свёрточные карты особенностей с малой частотой дискретизации и большим шагом (8, 16, 32), которые теряют информацию и слишком неточны для описания изображений небольшого размера.

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

В генераторе используется нейросеть SRN (super-resolution network) , чтобы повысить разрешение. В отличие от повышения разрешения с помощью билинейной операции, SRN не добавляет артефакты в создаваемые изображения и улучшает их качество за счёт больших факторов масштабирования. Неcмотря на это, при использовании SRN и других продвинутых нейросетей, исследователи получали сильно размытые изображения без мелких деталей. Это следствие очень малого разрешения входных изображений.

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

Дивный новый мир

Проектов, которые подстраивают информационную картину под восприятие конкретных пользователей, в последнее время появляется всё больше. Одним из примеров их работы стала недавняя акция трех ливийских порталов, которые опубликовали новость, якобы напечатанную в номере «Известий» от 20 ноября. Создатели фейка видоизменили первую полосу газеты, разместив на ней сообщение о переговорах фельдмаршала Халифы Хафтара и премьера правительства национального согласия (ПНС) Файеза Сарраджа. Фальшивку, выполненную шрифтом «Известий», сопровождало фото двух лидеров, сделанное в мае 2017 года. Плашка с логотипом издания была вырезана из реально вышедшего в печать номера от 20 ноября, а все остальные тексты на полосе из выпуска от 23 октября.

Читать еще:  Общая Windows для всех устройств: компьютер, мобильник, планше?

С точки зрения специалистов, в обозримом будущем такие фальсификации можно будет делать в автоматическом режиме.

— Технологии искусственного интеллекта сегодня полностью открыты, а устройства для получения и обработки данных миниатюризируются и дешевеют, — сообщил «Известиям» доктор физико-математических наук, профессор РАН, начальник подразделения ФГУП «ГосНИИАС» Юрий Вильзитер. — Поэтому велика вероятность, что в скором будущем подслушивать и подсматривать за нами, а также манипулировать реальностью смогут даже не государство и крупные корпорации, а просто частные лица. В течение ближайших лет появится возможность, анализируя предпочтения пользователя, воздействовать на него посредством подборок новостей и очень искусных фейков.

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

В вагонах московского метро появятся камеры с системой распознавания лиц. Чем это грозит пассажирам?

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

К концу года «умные» камеры, способные анализировать огромный массив данных и распознавать лица, появятся и в вагонах метро. «МБХ медиа» рассказывает, смогут ли новые технологии стать инструментом для слежки за пассажирами и почему в некоторых странах мира уже начинают отказываться от этой практики.

Тотальный сканер

Компания «Максимателеком», которая больше известна как провайдер бесплатного Wi-Fi московской подземки, выиграла тендер на оснащение вагонов метро системой видеонаблюдения с функцией распознавания лиц до конца года. На эти цели правительство Москвы выделило 1,38 млрд рублей. В эту сумму входит установка 12 304 камер, 418 серверов распознавания лиц, 1538 коммутаторов и специальное программное обеспечение. Предполагается, что эти нововведения затронут более чем 1500 вагонов — четверть от общего парка метрополитена.

Столичные власти объясняют это решение заботой о гражданах и борьбой с преступностью. Точной статистики о том, как системы видеонаблюдения с функцией распознавания лиц помогают силовым ведомствам выполнять их обязанности, в открытом доступе нет. Но, по словам главы ГУ МВД по Москве Олега Баранова, только в 2019 году с помощью этой технологии удалось раскрыть 4000 преступлений.

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

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

«Одно дело в режиме реального времени наблюдать, чтобы не произошли какие-то кражи, какие-то криминальные действия. А другое дело — хранить какое-то время наши биометрические данные. Непонятно, кто к ним имеет доступ, на каких основаниях, как долго это хранится. Отсюда и появляются различные риски. Это и то, что мы не давали согласия на сбор этой информации, и то, что происходят регулярно утечки. В том числе со стороны государственных баз» , — говорит руководитель общественной организации « Роскомсвобода» Артем Козлюк.

В 2019 году двадцать шесть станций московского метро уже оборудовали турникетами с современными системами видеонаблюдения. В рамках первого этапа, на который был выделен 101,6 млн рублей, такие видеокомплексы появились на одиннадцати станциях Серпуховско-Тимирязевской линии, на семи станциях Калужско-Рижской и Люблинско-Дмитриевской линий и на одной станции Таганско-Краснопресненской линии. О том, какие данные могут собирать эти видеокомплексы, также нигде не сообщалось.

В 2017 году в подземке уже функционировали свыше 17 тысяч камер. Системы видеонаблюдения можно увидеть не только в вестибюлях и на турникетах, но и внутри туалетных кабинок. В декабре 2019 года пассажир метрополитена опубликовал видео, на котором можно легко разглядеть вмонтированную в стену кабинки камеру. В пресс-службе Метрополитена объяснили, что техника начинает работать только тогда, когда человек покидает помещение, чтобы проследить, что внутри не осталось никаких лишних и потенциально опасных предметов.

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

Фото: Эмин Джафаров / Коммерсантъ

Право на ошибку

Несмотря на то, что за последние годы системы распознавания лиц значительно усовершенствовались по всему миру, абсолютно безошибочно идентифицировать людей пока что не может ни одно программное обеспечение. Как рассказал «МБХ медиа» Олег Кивокурцев, директор по развитию российской компании Promobot, занимающейся в том числе обучением нейросетей, на сегодняшний день хорошим показателем для таких технологий является 90% точность.

« То есть каждое десятое лицо может быть не распознано. И, безусловно, это может привести к ошибкам. Действительно, распознать можно даже человека в защитной маске, если нейронная сеть обладает данными, как у него выглядит верхняя часть лица. Но точность такого распознавания падает очень сильно. Хорошим показателем в таком случае будет уже 50% « .

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

Однако в некоторых случаях частотность ошибок распознавания, наоборот, увеличивается. Системы часто дают сбой при идентификации людей с азиатскими чертами лица и темной кожей. Исследование, проведенное в 2019 году университетом Торонто совместно с Массачусетским технологическим институтом, показало, что одна из успешных на международном рынке программ по распознаванию лиц Amazon Rekognition в 35% случаев неверно идентифицирует темнокожих женщин. А в 2018 году технология распознавания лиц, проданная компанией, ошибочно опознала 28 конгрессменов как преступников.

Системы распознавания лиц на улицах Москвы работают на основе технологий российской компании NtechLab, которая начинала свой путь с создания приложения FindFace в 2016 году. Этот интернет-сервис позволял установить личность человека по фотографии и найти его профиль «ВКонтакте». С 2018 года компания активно сотрудничает с государственными структурами. На официальном сайте NtechLab пишут о своем продукте FindFace Security так: «Совершенный алгоритм распознавания лиц и быстрое внедрение делают продукт идеальным для решения задач безопасности государства и бизнеса». В ближайшее время компания обещает выпустить новое программное обеспечение, которое позволит точно подсчитывать количество людей на улицах даже в местах массовых скоплений и прослеживать путь отдельно взятого человека по силуэту.

Фото: Станислав Тихомиров / ТАСС

Борьба за персональные данные

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

Само по себе видеонаблюдение в общественных местах является допустимым с точки зрения закона. Правда, с небольшим условием: люди должны быть заранее предупреждены о том, что ведется фото- и видеосъемка. Как рассказал « МБХ медиа» Иван Кайсаров, старший юрист Eversheds Sutherland, гораздо сложнее и противоречивее регулируются технологии распознавания лиц. Здесь и возникают некоторые вопросы к законодательству о персональных данных.

Обычно для обработки биометрических данных требуется письменное согласие субъекта. Однако это только одно из оснований. Есть и другие: например, случаи, предусмотренные законодательством Российской Федерации об обороне, о безопасности, о противодействии терроризму и коррупции. Здесь уже отказаться от такой обработки невозможно.

« Тут стоит обратить внимание на то, что указанные формулировки достаточно размытые, то есть нет четкого понимания, до какого предела можно все обосновывать безопасностью граждан, — подчеркнул юрист. — Это, наверное, некий новый тренд в сфере безопасности со стороны государственных органов, с которым будет сложно спорить. Государство видит множество законных оснований, чтобы это делать, и оспаривать это будет крайне сложно, если не невозможно, в том числе из-за отсутствия четких границ между общественной безопасностью и ограничением вторжения в жизнь граждан».

Участники общественной организации « Роскомсвобода» выступают за мораторий на использование систем распознавания лиц, в том числе в метро, поскольку это нарушает действующее законодательство и даже конституционные права.

Запрет на распознавание лиц: будет ли он в России?

Технология facial recognition (распознавания лиц) становится все.

« Обосновать это целями безопасности вполне логично. Но пока нет указания конкретных случаев, в какой момент и в какой ситуации можно использовать эти системы, мы полагаем, что это незаконно. Потому что граждане без такого конкретного порядка и ясных правил не смогут защититься от злоупотреблений этой технологией « , — соглашается юрист и адвокат « Роскомсвободы» Екатерина Абашина.

Читать еще:  Проверка SSD: 15 Программ для Теста Здоровья и Скорости Диска

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

В июне на волне протестного движения Black Lives Matter представители крупнейшей американской IT-компании IBM заявили, что перестанут продавать программное обеспечение для распознавания лиц правоохранительным органам, потому что это приводит к нарушению прав и свобод обычных людей и поддерживает расовую дискриминацию в обществе. Позднее к мораторию присоединились Amazon и Microsoft.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Применение нейронной сети в распознавании изображений

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

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

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

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

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

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

В какой-то момент увеличение числа слоёв приводит к просто запоминанию выборки, а не обучению. Далее — за счёт хитрых архитектур.

Поиск лиц

Поиск лица на фотографии — классическая задача в компьютерном зрении. Её решали вполне успешно ещё до революции глубокого обучения, в начале 2000-х годов, так называемым алгоритмом Виола-Джонса. Это было одно из самых известных применений каскадов Хаара в качестве признаков; но эти дни давно прошли.

Сегодня распознавание лиц не рассматривается как отдельная задача, требующая индивидуального подхода. Оно точно так же решается свёрточными нейронными сетями. Уже давно стало ясно, что CNN хорошо подходят для обнаружения объектов вообще, и поэтому современное решение классической задачи тоже, скорее всего, будет основано на CNN; так и получается.

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

Если более простой подход работает достаточно хорошо, возможно, не стоит вводить очень сложные модели, чтобы выиграть несколько процентных пунктов (напомните мне потом рассказать вам о результатах конкурса рекомендательных систем Netflix Prize Challenge). Поэтому в демо на NeuroPlatform мы используем более классический подход к обнаружению лиц, а свёрточные сети работают только для основной задачи распознавания возраста и пола. Но и в классическом компьютерном зрении есть о чём рассказать.

Наша модель обнаружения лица использует метод опорных векторов (SVM, классический метод машинного обучения; пожалуй, поля этой статьи слишком узки, так что просто оставим ссылку), который запускается на HOG + SIFT представлении изображения. Представления HOG и SIFT — это тщательно вручную подобранные функциии, ставшие результатом многолетнего опыта в создании систем распознавания образов. Оказалось, что это представление хорошо работает с ядерными методами, в том числе и с методом опорных векторов.

Алексей Артамонов: Как компьютерное зрение обеспечивает нашу безопасность

Оглянитесь вокруг. Сколько камер вы насчитали? Если ни одной, то вы наверняка ошибаетесь: в каждом ноутбуке и смартфоне сегодня есть камера. Объем информации, который фиксируется на видео, огромен. Взять, например, портал открытых данных, где хранится информация обо всех камерах наблюдения в Москве. Теоретически можно получить доступ к информации со 160 тысяч камер за пять предыдущих дней. Конечно, какие-то из них не работают, какие-то не всё записали. Но даже при этом физически просмотреть все эти записи невозможно — слишком велик объем данных.

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

Суперзум

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

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

Слева «испорченное» изображение, справа — оригинал, по центру — два изображения, восстановленные с помощью разных алгоритмов. Обратите внимание на детали на головном уборе девушки Иллюстрация: arxiv.org

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

В этом году компания «Яндекс» представила свою технологию, которая улучшает качество видео. Ее применяют для повышения визуального качества старых советских фильмов, а также для повышения разрешения потокового видео в реальном времени.

Системы слежения

Работу современных систем слежения, известных как CCTV (Сlosed Circuit Television), не показывают в фильмах, поскольку она не очень зрелищная. Зато эффективная. Системы умеют, среди прочего, выявлять аномальные процессы в зоне слежения. Представьте аэропорт, где много людей, которые постоянно куда-то идут. Как правило, они двигаются в одних и тех же направлениях, в течение суток меняется их количество, иногда проезжает уборочная машина, которая как-то влияет на поток, где-то собирается очередь, как-то изменяется освещение. И вдруг процесс нарушается, люди начинают расходиться или разбегаться в разные стороны, появляются необычные шумы — камеры наблюдения это заметят и оповестят дежурного. Системе не важно, что происходит, — она реагирует на резкое изменение ситуации. Конечно, такая сигнализация не всегда работает хорошо и иногда «кричит» «Волки!», когда не надо. Но это надежный ассистент, в работу которого не вмешивается человеческий фактор.

Многим не нравится повсеместное внедрение CCTV, потому что камеры постоянно следят за тем, что мы делаем, куда поехали, что поели и с кем пошли в кино. Могут ли камеры распознать лица из какой-нибудь фиксированной базы? Да, могут. Конечно, это делают не сами камеры, а алгоритмы, которые обрабатывают видеопоток. Это довольно ресурсоемкая технология, и компьютер едва ли может обработать более одного видеопотока в хорошем качестве, которое необходимо для того, чтобы распознавание каждого лица было возможным. Поэтому, если говорить о глобальной системе слежения, надо отдавать себе отчет в том, насколько она должна быть сложная и дорогая. Например, в рамках пилотного проекта в Москве запустили систему, которая анализирует изображения лиц, полученные с 3 тысяч камер, входящих в единую сеть. Без распознавания власти потратили порядка 5 миллиардов рублей на сеть из 160 тысяч камер. Если каждую камеру подключить к алгоритму распознавания, то цена возрастет в несколько раз. Гораздо масштабнее к этому подошли в Китае: там установлено более 150 миллионов камер. Системы распознавания, которые внедрены в эту сеть, за семь минут справляются с тем, чтобы отыскать человека по фото в городе, где живут 4 миллиона человек. В США камеры распознавания личности установлены в 22 аэропортах. В Австралии биометрическая система распознавания лиц и отпечатков пальцев скоро будет использоваться на таможне для прохождения паспортного контроля. Более того, сейчас активно разрабатываются алгоритмы, которые способны опознать человека не только по лицу, но и по походке — это несколько сложнее, поскольку, чтобы получить информацию о человеке из базы, нужно проанализировать видеопоследовательность, а не один кадр.

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

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

Читать еще:  Восстановление Windows 10 (5 способов)

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

Люди, которые обеспечивают безопасность, скорее пользователи, чем создатели всех этих технологий. Например, китайская компания Baidu разрабатывает систему распознавания лиц для замены билетов. Вы платите, система вас запоминает, и не нужны охранники и турникеты, которые проверяют ваш билет, не нужно иметь печатную или электронную копию, не нужен пластиковый абонемент, можно просто прийти и представиться системе через камеру, установленную на входе. Анонсированная точность распознавания 99,77 процента — выше, чем у человека. Такая система установлена в одном из парков в Китае и проверяет посетителей на наличие билетов. Ну и как не упомянуть компанию Apple с ее FaceId, которая заменила отпечаток пальца для разблокировки телефона на распознавание лица человека.

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

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

Иллюстрация: arxiv.org

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

Автор — исследователь компании Neuromation

Почему эту работу не может выполнить кто угодно?

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

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

Установка OpenCV на Linux (Debian Squeeze)

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

Теперь скачаем с официального сайта релиз OpenCV 2.3.1 и распакуем его

Заходим в распакованную папку и создаем новый каталог release, а затем компилируем и устанавливаем библиотеку.

Программы с использованием OpenCV могут быть написаны на любом языке, но мне удобнее набросать скрипт на языке PHP, поэтому я установил PHP-модуль facedetect, работающий с OpenCV. Для использования в системе PHP и Apache нужно, чтобы были установлены следующие пакеты apache2, php5, php5-dev php5-gd

Качаем с Github PHP-Facedetect, распаковываем и устанавливаем с помощью нехитрой процедуры:

Теперь осталось только в файле php.ini подключить установленный модуль.

Прежде чем написать простенькую программу, нужно еще раз немного подумать. Для нейронной сети нам нужно подготовить как можно более нормализованные примеры, чтобы сеть не отвлекалась на мелочи, которые не имеют к решению нашей задачи никакого отношения. Поэтому необходимо предусмотреть две вещи:
Первое. Лицо на фотографии может занимать разную площадь, в том числе в пикселях. Значит необходимо произвести ресайз всех изображений до определенного формата, например 200 на 200 точек.
Второе. Цвет. В данном случае цвет будет мешать. Эта та информация, которая в целом не несет с точки зрения классификации и распознавания лиц полезной функции, но может теоретически мешать нейронной сети правильно принять решение. Мы должны преобразовать цветную фотографию в черно-белую (а точнее, в grayscale).

Сделать это нетрудно и в результате получается вот такой скрипт.

Программа анализирует snap.jpg, полученный с камеры наблюдения, выявляет на фото лицо и записывает в файл face.jpg


В результате из целого кадра получаем grayscale кроп 200х200 готовый к распознаванию

Спустя некоторое время у нас может набраться достаточное количество лиц, как своих, так и чужих. Чтобы не усложнять программный код в статье, предположим, что нам необходимо отличить от всего массива лиц какое-то конкретное. Для этого мы воспользуемся нейронной сетью и подходом, который описан в статье «Анализ изображений с помощью нейронной сети». Подготовим обучающий материал. Отсортируем вручную несколько десятков фотографии и в папку «1» запишем файлы с лицом, у которого есть доступ, а в папку «0» всех остальных.
Далее напишем простую программу, которая обучит нашу нейронную сеть.

Теперь проверим работоспособность сети в боевых условиях и с помощью программы.

В результете мы получим число, которое будет ответом нейронной сети. Значения больше 0.7 будут говорить, что этому человеку разрешен доступ. Значения меньше 0.3 — нет. Иные значения лучше трактовать как неопределенные. Фотографии таких лиц лучше складывать в отдельную папку для дальнейшего дообучения сети.

Испытания в реальных условиях показали, что предложенный подход неплохо справляется с задачей.
Человек, который имеет доступ. Ответ нейронной сети: [0] => 0.960845589638
Человек, у которого нет доступа. Ответ нейронной сети: [0] => 0.0223079491407

У предложенного в статье решения есть только один минус. Время распознавания. Оно зависит от объема обучающего материала. В моем примере для обучения использовалось 40 фотографий. Объем сети в памяти занимает порядка 260Мб. Время распознавания на компьютере с процессором Pentium 4 3ГГц — около 15 секунд. Но, полагаю, если система покажет свою работоспособность в будущем, можно будет подумать и об апгрейде сервера. Дообучать сеть можно будет в полуавтоматическом режиме.

Вот такой вот получился фейс-контроль.

Автор: Andrey_B
Любое использование материалов сайта возможно только с разрешения автора и с обязательным указанием источника.

Архитектура нейросети

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

Архитектура генератора и дискриминатора

Генератор

Улучшающая нейросеть генератора имеет архитектуру свёрточной нейросети. После каждого свёрточного слоя, за исключением последнего, производилась нормализация (batch normalization) и активация ReLU.

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

Дискриминатор

В качестве основной нейросети в дискриминаторе используется нейросеть VGG19 , из которой удалён слой субдискретизации для исключения различных операций уменьшения разрешения. Более того, все полностью соединённые слои (т.е. f c6, f c7, f c8) заменены на два параллельных полностью соединённых слоя fcGAN и fcclc . На вход подаётся изображение увеличенного разрешения. Ветвь fcGAN выдаёт вероятность того, что входное изображение — реальное, а ветвь fcclc выдаёт вероятность того, что на входном изображении присутствует лицо.

Функция потерь

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

где ILR и IHR обозначают небольшие размытые фрагменты (low resolution) и изображения с высоким разрешением (high resolution) соответственно, G1 — SNR нейросеть, G2 — улучшающая нейросеть, w — параметры Генератора.

Состязательные потери: для достижения более реалистичных результатов вводятся состязательные потери, определяемые как:

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

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

Классификационные потери используются по двум причинам. Во-первых, они позволяют Дискриминатору определить, присутствуют ли на реальном и созданном изображениях лица или нет. И во-вторых, они стимулируют Генератор создавать более детальные изображения.

Целевая функция: состязательные и классификационные потери входят в попиксельные среднеквадратичные потери. Генеративно-состязательная нейросеть может быть обучена с помощью целевой функции. Для лучшего поведения градиента функции потерь Генератора G и дискриминатора D были изменены следующим образом:


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

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector