Блоги
Программа Neural Doodle на основе нейросети превращает «каракули» в художественные шедевры
26

Программа Neural Doodle на основе нейросети превращает «каракули» в художественные шедевры

Neural Doodle

Программа Neural Doodle, сделанная на основе свёрточной нейросети, превращает в настоящие картины обычные рисунки или фотографии. Создатель программы Алекс Шампандар (Alex Champandard) разместил исходный код на GitHub, а конструкцию нейросети описал в научной работе, подготовленной для конференции nucl.ai Conference 2016.

Программа представляет собой скрипт Python, который генерирует изображения, принимая три картинки в качестве входных параметров. На «вход» подаются рисунок или фотография, образец, демонстрирующий стиль, которому пользователь хочет подражать в своём изображении, а также его «семантическая карта» — схематический рисунок, сделать который можно в любом графическом редакторе наподобие Microsoft Paint. Нейросеть считывает особенности стиля образца, переносит их на набросок, и на выходе у Neural Doodle получается новая полноценная картина.

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

Для запуска программы нужен Python 3.4+, установленные библиотеки numpy и scipy, а также python3-dev. Для работы скрипта потребуется предварительно обученная нейросеть (VGG19, 80 МБ), а для рендеринга на GPU — хорошая карта Nvidia с поддержкой технологии CUDA и 2-4 ГБ памяти (для больших изображений 8-12 ГБ). Рендеринг можно запустить и на CPU, в этом случае нужно примерно такое же количество оперативной памяти.

В обсуждении программы на Reddit Шампадар рассказал, что на современном компьютере (он использует MacBook Pro 2014 года) рендеринг одного изображения невысокого разрешения занимает около часа времени. Его Твиттер-бот @DeepForger, стилизующий фотографии под картины художников, умеет масштабировать конечные изображения до разрешения 1080p, однако Neural Doodle пока на такое не способен.

Напомним, что ранее в сети приобрел популярность алгоритм «Deep Dream» от компании Google, с помощью которого нейросети могли рисовать картины и имитировать полотна знаменитых мастеров.

Источник: GeekTimes


Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: