Программист из Саудовской Аравии создал браузерную реализацию алгоритма pix2pix, превращающего наброски пользователя в изображения, создаваемые нейросетью, обученной на фотографиях. Во время рисования нейросеть в реальном времени превращает каждый штрих в новый элемент изображения, а все вычисления происходят на компьютере пользователя. Пока сервис умеет перерисовывать только кошек, фасады зданий и обувь, сообщается в блоге prosthetic knowledge.
Алгоритм pix2pix был разработан в 2016 году специалистами из Калифорнийского университета в Беркли. Он основан на генеративно-состязательной нейросети — архитектуре, которую часто применяют в нейросетях, предназначенных для создания реалистичных изображений, аудиозаписей и других объектов. Она состоит из двух частей, одна из которых создает изображение, а вторая пытается отличить его от объектов из обучающего набора эталонных изображений. В результате, в процессе обучения обе части алгоритма совершенствуются в своей задаче и синтезируемые им изображения становятся более качественными.
Изначально авторы создали развертываемую на компьютере реализацию нейросети, а сторонние специалисты смогли перенести ее в браузер, но в таком режиме программа принимала в качестве входных данных лишь завершенный набросок и работала непосредственно на сервере, из-за чего сервис уже закрыли. Теперь Заид аль-Яфии (Zaid Alyafeai) из Университета нефти и ископаемых имени короля Фахда создал реализацию алгоритма pix2pix, работающую в реальном времени, использующую ресурсы пользователя, а также содержащую три модели для разных типов объектов — кошек, фасадов домов и обуви.
Для переноса алгоритма в браузер программист воспользовался библиотекой TensorFlow.js, которая загружает на компьютер пользователя обученную нейросетевую модель и все необходимые данные, а затем проводит вычисления на устройстве пользователя. При выборе модели для рисования обуви или кошек пользователь просто рисует предмет, и после окончания каждой линии нейросеть превращает набросок в «фотографию», соответствующую этим контурам.
При рисовании фасадов домов используется более сложная схема. По сути, в этом случае происходит операция, обратная семантической сегментации, при которой изображение разбивается на области, на которых находятся объекты разных типов. К примеру, балкону и окну на изображении будут соответствовать разные цвета. В данном случае пользователь сам задает тип объекта, выбирая разные цвета. Также в этом режиме можно рисовать не линии, а прямоугольники.
Опробовать сервис можно на специальной странице, а его исходный код и использованные датасеты опубликованы на GitHub.
В прошлом году мы решили проверить работу алгоритма pix2pix на необычной задаче — превращении популярных мемов в фотореалистичные портреты. Вы можете самостоятельно оценить, насколько хорошо справилась с задачей нейросеть, посмотрев на результаты ее работы в нашем материале «Изображая мемы».
Григорий Копиев
Она расшифровала тона и слоги независимо друг от друга
Исследователи из Китая предложили модульную многопоточную нейронную сеть, которая на основе нейронных записей синтезировала речь на тоновом языке. С ее помощью удалось декодировать восемь тоновых слогов китайского языка. Авторы показали, что их метод точнее, чем классические базовые методы глубоких нейронных сетей. Исследование опубликовано в Science Advances.