Американские и британские разработчики создали приложение, в котором пользователь может сделать набросок и сразу же получить изображение, созданное нейросетью на его основе. Алгоритм состоит из двух частей, одна из которых дорисовывает набросок, а вторая превращает дорисованную картинку в фотографию. Разработка будет представлена на конференции ICCV 2019, статья о ней опубликована на arXiv.org.
На протяжении последних лет разработчики создали множество алгоритмов для генерации изображений, которые порой сложно отличить от реальных фотографий. К примеру, заметных результатов достигли разработчики из NVIDIA, научившие нейросети синтезировать фотографии несуществующих людей, а также реалистичные видеоролики. Позже разработчики стали создавать доступные обычным пользователям программы, в которых легко превратить простой набросок или цветной рисунок в фотореалистичное изображение. Однако эти программы работают либо не в реальном времени, либо требуют от пользователя самостоятельно рисовать полный набросок.
Разработчики под руководством Эли Шехтман (Eli Shechtman) из Adobe Research создали приложение, которое в реальном времени самостоятельно дорисовывает набросок и превращает его в синтезированную фотографию. Приложение состоит из двух окон и вспомогательных кнопок. В первом окне пользователь рисует набросок, а во втором видит созданное нейросетями изображение. Для начала пользователь выбирает класс объекта, к примеру, ананас, и алгоритм сразу же выдает типичный для него набросок. После начала рисования нейросеть постоянно обновляет набросок, дополняя часть, нарисованную пользователем.
Авторы разбили проблему на две части и использовали для ее решения связку из двух генеративно-состязательных нейросетей. На первом этапе алгоритм, обученный на набросках определенного класса, получает первоначальный набросок пользователя и дорисовывает его до полного. На втором этапе на основе дорисованного наброска формируется реалистичное изображение.
Разработчики создали собственный датасет для обучения нейросетей, состоящий из фотографий и набросков объектов десяти типов. Наброски создавались автоматически на основе краев объектов на фотографиях. В своей работе авторы протестировали две схемы, и создали не только десять отдельных нейросетевых моделей для каждого класса, но и многоклассовый генератор, который создает разные изображения в зависимости от условного вектора.
Помимо публикации статьи о разработке авторы также опубликовали на GitHub исходный код приложения для Linux и macOS, а также краткую документацию.
Любопытно, что существует и обратный проект, превращающий фотографии в наброски. В прошлом году австралийский инженер создал картонную камеру, которая после нажатия кнопки снимает фотографию, преобразует ее в набросок, а затем сразу же печатает на встроенном термопринтере.
Григорий Копиев
Как инженеры создали первые цифровые изображения
Мнение редакции может не совпадать с мнением автора
К середине XX века люди уже изобрели компьютеры, однако во всем мире существовало всего несколько цифровых изображений. Считалось, что вычислительные машины нужны для серьезных задач, а эксперименты с картинками — всего лишь развлечение. В книге «Пиксель. История одной точки» (издательство «Individuum»), переведенной на русский язык Алексеем Снигировым, один из основоположников современной анимации Элви Рэй Смит рассказывает биографию цифровых изображений, захвативших мир в XXI веке, а также размышляет об истории искусства, технологиях и бизнесе. Предлагаем вам ознакомиться с фрагментом о том, как разработка памяти для электронного компьютера обернулась созданием первых цифровых изображений, но до этого никому не было дела.