Pull to refresh

Нейросеть превращает каракули в художественные шедевры

Reading time1 min
Views76K


Программа Neural Doodle, сделанная на основе свёрточной нейросети, представляет собой скрипт doodle.py, который генерирует изображения, принимая три-четыре картинки в качестве входных параметров. В том числе на вход подаётся простенький набросок (то что авторы называют «каракулями») и образец стиля с его наброском. Например, в случае с примером выше образцом стиля является такая картина Ренуара.

Нейросеть извлекает характерные стилевые особенности — и переносит их на набросок.

Вот ещё один пример.



Образец стиля от Клода Моне.



Для запуска программы нужен Python 3.4+, установленные библиотеки numpy и scipy, а также python3-dev. Для работы скрипта потребуется предварительно обученная нейросеть (VGG19, 80 МБ). Инструкции по установке локального окружения см. здесь.

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

Конструкция нейросети описана в научной работе автора "Semantic Style Transfer and Turning Two-Bit Doodles into Fine Artworks", которую он подготовил для конференции nucl.ai Conference 2016.

Нейросеть использует алгоритм синтеза изображений, который предложен исследователями Чуан Ли (Chuan Li) и Майклом Вандом (Michael Wand) в научной работе "Combining Markov Random Fields and Convolutional Neural Networks for Image Synthesis".
Tags:
Hubs:
+36
Comments103

Other news

Change theme settings