
Идея проекта

Мне захотелось обучить генеративную нейросеть для генерации персонажей для книги в стиле моего проекта Camelia — магазин растений-питомцев. Эти вымышленные существа никогда не оставят Вас в одиночестве, а также будут верными напарниками.
Цель моего проекта является посмотреть, насколько похоже нейросеть сможет создать иллюстрации в моем стиле для детской книги. Вымышленные растения могут быть абсолютно любой формы, однако им присуще мультяшные глаза и 2д-графика.
Исходные изображения
Эти вымышленные растения-питомцы выполнены в иллюстративной графике. Их форма чаще всего напоминает сами растения, однако она может быть и совершенно абстрактная, даже в виде облака.
Они обладают ярко выраженными мультяшными глазами, а также выполнены в приоритете в розовых оттенках.
Процесс обучения
Скачаем скрипт для обучения и библиотеку с Hugging Face с генеративной моделью.
Импортируем все необходимые библиотеки и инициализируем папку, в которой находятся изображения для обучения модели.
Используем функцию для показа нескольких исходных изображений. На них присутствуют различные персонажи для детской книжки. Наша цель — с помощью генеративной нейросети создать большее количество персонажей в таком же стиле.
Сгенерируем для каждого изображения промпт, который будет использоваться для обучения Stable Diffusion.
Обучим модель с помощью скачанного скрипта и сохраним два чекпоинта — на 250 и 500 итерациях.
Теперь перейдем к генерациям новых изображений. Для начала посмотрим на то, как модели с разных чекпоинтов справляются с поставленной задачей.
Мы видим, что модель на 250 итерации создала персонажа по запросу из промпта, но не в том стиле, который присущ исходным изображениям, то есть 250 итераций не хватило модели для обучения генерации в таком же стиле. Зато на 500 итерации мы получили монстрика в нужном нам виде. Соответственно, это модель мы и будем использовать для создания новых персонажей.
Итоговая серия изображений и его разбор
Вместо того, чтобы в каждой ячейке отдельно генерировать изображение по промпту, я решила сделать циклом пробежку по списку промптов, чтобы сократить количество кода и места, используемого выводом генераций.
Как я считаю, хоть изображения имеют более абстрактные линии, у меня получилось обучить нейросеть моему стилю.
В итоговых изображениях присутствуют мультяшные глаза, которые присуще моим персонажам, плавные линии, а также преобладают розовые оттенки.
Так или иначе, мы можем распознать стебель растения и его оранжевые лепестки. Его большое количество глаз соблюдают стилистику исходных изображений.
Здесь мы можем увидеть облако, однако в моих исходных изображениях тоже присутствовали персонажи, которые имеют такую форму.
На генерации соблюдены круглые и плавные линии, а также лицо с глазами, которое присуще каждому растению-питомцу.
На этих изображениях мы также можем увидеть вымышленных персонажей, которые напоминают растения. Один из них является кактусом, а другой — оранжевым цветком.
Они также имеют миловидные глаза и иллюстративную 2D графику.
Подводя итоги, хочется сказать, что нейросеть так или иначе не может полностью заменить иллюстратора, однако может помогать как дополнительный материал для работы с графикой, так как все изображения соблюдают общую стилистику проекта, его философию и посыл.