Original size 2480x3500

Обучение генеративной модели на основе работ иллюстратора Oyow

PROTECT STATUS: not protected
13

Идея проекта

Сеульский иллюстратор Oyow (오요우) создает удивительно нежные и атмосферные работы, которые стали основой для обучения генеративной модели. Его узнаваемый стиль сочетает плавные линии, приглушенную пастельную палитру и минималистичные, но эмоционально насыщенные композиции. Вдохновляясь природой и человеческими отношениями, художник наполняет свои иллюстрации особой теплотой и меланхолией, приглашая зрителя остановиться и прочувствовать момент.

big
Original size 2880x2037

Oyow, «The Gardeners», 2022

Работая как в цифровом формате (Photoshop), так и в технике трафаретной печати, Oyow добивается уникального визуального языка — простого по форме, но глубокого по содержанию. Именно эта баланс между лаконичностью и эмоциональной глубиной делает его стиль идеальным для генеративного ИИ. Четкая визуальная система с узнаваемыми силуэтами, ограниченной цветовой гаммой и продуманными композициями позволяет модели эффективно обучаться и воспроизводить ключевые элементы авторского стиля.

Исходные изображения для обучения

big
Original size 3500x2480

Oyow, «The Gardeners», 2022

Original size 3500x2480

работы художника (@oyowwo) из социальной сети Instagram (принадлежит компании Meta, признанной экстремистской и запрещённой на территории РФ)

Original size 2880x2029

Oyow, «The Gardeners», 2022

Процесс обучения

Обучение проходило в среде Kaggle с использованием генеративной модель Stable Diffusion XL в сочетании с технологией дообучения LoRA. Перед началом работы я собрала и подготовила датасет из 50 иллюстраций художника в формате jpg и разрешением 512×512.

Original size 3500x1220

Первым шагом в блокноте проверяется доступность GPU для ускорения вычислений. Также устанавливаются ключевые библиотеки: bitsandbytes (оптимизация обучения), transformers и accelerate (работа с моделями), peft (тонкая настройка, включая LoRA), а также актуальная версия diffusers для диффузионных моделей. Затем загружается обучающий скрипт train_dreambooth_lora_sdxl.py от HuggingFace для реализации метода DreamBooth с применением LoRA.

Original size 3500x2432

После я создала папку arts и перенесла туда все изображения из указанной директории. Потом сформировала из них горизонтальный коллаж-превьюшку, чтобы проверить, какие изображения загрузились и как они выглядят

Original size 3500x2499

Дальше загрузила нейросеть для генерации подписей к картинкам BLIP, которая обрабатывает все изображения из папки arts и создаёт для каждого краткое текстовое описание. Сaption_images принимает картинку, анализирует её с помощью нейросети и возвращает текстовую подпись. В конце код собирает все JPG-файлы из указанной папки и подготавливает их для обработки, сохраняя пути к файлам и сами изображения.

Original size 3500x1972

В этой части кода я взяла картинки из папки arts и добавила к их нейросетевому описанию префикс «art in OYOW style», чтобы направить обучение на определённую стилистику. Потом сохранила всё в JSON-файл с именем файла и текстовым промптом. После выводится содержимое этого файла и освобождается память, удаляя загруженную модель.

Original size 3500x901

Затем я подготовила окружение для работы с нейросетями. Сначала исправила возможные проблемы с кодировкой, чтобы текст нормально отображался. Потом настроила accelerate для ускоренных вычислений — так модель будет работать быстрее. И в конце добавила авторизацию в Hugging Face Hub, чтобы можно было спокойно качать и использовать свои модели прямо из ноутбука.

Original size 1620x980

Обучение длилось 1200 шагов с learning rate 1e-4 и batch size 2. В параметрах указала базовую модель SDXL, VAE-кодировщик, разрешение 512×512 и промпт «art in OYOW style», чтобы нейросеть запомнила именно эту стилистику. Также обучение шло с пакетами по 2 изображения, fp16-ускорением и 8-битным Adam-оптимизатором, с сохранением чекпоинтов каждые 250 шагов. На выходе получается легковесный LoRA-файл с новым стилем, который можно накладывать на оригинальную SDXL без полной перезагрузки модели.

После обучения я выложила обученную LoRA-модель в свой профиль на Hugging Face, чтобы она была доступна из облака. В конце получила прямую ссылку на свою модель для использования или публикации.

Итог генераций

Благодаря небольшому датасету и аккуратной предобработке, модель довольно быстро начала воспроизводить визуальные черты oyow — например, характерные фигуры, мягкие формы, плавные переходы цвета и текстуру бумаги. Я периодически проверяла промежуточные результаты, генерируя изображения по текстовым запросам, и корректировала параметры генерации guidance scale и number of inference steps, чтобы добиться лучшего качества.

Original size 1024x1024

prompt: a drawing of a person standing in a field of flowers, art in OYOW style (num_inference_steps=30, guidance_scale=7.5)

prompt: art in OYOW style, a drawing of a field with rocks and grass 1. num_inference_steps=25, guidance_scale=7.5 2. num_inference_steps=30, guidance_scale=10

Модель показала хорошие результаты при генерации композиций без людей с параметрами num_inference_steps=25 и guidance_scale=7.5. При генерации сцен с людьми удачные изображения иногда получались при num_inference_steps=30 и guidance_scale=10, однако в таких случаях модель часто дорисовывала человеческие фигуры, даже если они не были указаны в промпте. Вероятно, это связано с тем, что фигуры людей в работах художника очень абстрактны, и модель могла интерпретировать определённые формы как человеческие. В целом, передача общего стиля была наиболее стабильной при num_inference_steps=25, но при увеличении параметров до 30 и guidance_scale=10 на ряде промптов объекты становились более детализированными и визуально ближе к референсным работам.

prompt: art in OYOW style, a car with a green leaf in the hood 1. num_inference_steps=25, guidance_scale=7.5 2. num_inference_steps=30, guidance_scale=10

Original size 1024x1024

promp: a drawing of a person standing in a field of flowers, art in OYOW style (num_inference_steps=30, guidance_scale=10)

При генерации людей у модели иногда возникали сложности: появлялись лишние конечности и искажённые пропорции тела. Однако общая стилистика изображения персонажей соответствует оригиналу — те же безликие фигуры с розовой кожей и лаконичными формами. На мой взгляд, результат получился вполне достойным, хотя очевидно, что модель лучше справляется с природными объектами — цветами, деревьями и камнями

1. prompt: art in OYOW style, a person holding a green leaf (steps=25, scale=7.5) 2. prompt: art in OYOW style, a couple sitting on the grass (steps=30, scale=7.5)

Original size 1024x1024

promp: art in OYOW style, a pink background with a tree and people (num_inference_steps=30, guidance_scale=7.5)

1. prompt: art in OYOW style, a blue background with a bunch of orange tulips (steps=25, scale=7.5) 2. prompt: art in OYOW style, a blue background with a tree (steps=25, scale=7.5)

Модель успешно передала характерную цветовую палитру художника и в целом хорошо справилась с композиционными решениями. Однако в работе с промтами наблюдались некоторые несовершенства — система не всегда точно следовала указаниям по цвету фона. Особенно заметна была склонность к золотистым оттенкам, если конкретный цвет не был явно указан в запросе.

Original size 1024x1024

prompt: art in OYOW style, a painting of a man swimming in a blue water (num_inference_steps=25, guidance_scale=7.5)

1. prompt: colourful art in OYOW style, a group of horses pulling a sler (steps=25, scale=7.5) 2. prompt: A beautiful painting of a sunset, art in OYOW style (steps=30, scale=7.5)

Original size 1024x1024

prompt: art in OYOW style, illustration of a woman floating in a pool of orange flowers (num_inference_steps=25, guidance_scale=7.5)

Модель хорошо схватила основы стиля — цвета, упрощённые формы и общую атмосферу, особенно в природных элементах. Но с людьми и сложными сценами бывают осечки: появляются лишние конечности или неожиданные детали. Лучше всего работает, когда в запросе чётко указаны ключевые параметры вроде цвета фона и уровня детализации. В целом получился неплохой инструмент для создания работ в этом стиле, хоть и с понятными ограничениями. Для серьёзных проектов стоит либо добавлять больше примеров в обучение, либо использовать дополнительные нейросети для контроля качества.

Описание применения генеративной модели

В проекте применялась модель Stable Diffusion XL, дообученная методом LoRA на авторском датасете. GPT-4-turbo использовался для, составления промптов, настройки среды и устранения технических ошибок в коде.

Ссылки

Обучение генеративной модели на основе работ иллюстратора Oyow
13
We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more