Цель проекта
Я решил обучить генеративную нейросеть Stable Diffusion для того чтобы сгенерировать персонажей в авторском художественном стиле
Цель проекта заключается в том, чтобы проверить насколько качественно нейросеть сможет обучиться заданному стилю, продолжить серию и модифицировать персонажей
На Google диске был собран датасет из квадратных иллюстраций в авторском стиле. Они выполнены в единой стилистике и определенной цветовой гамме. Цель проекта именно в том, чтобы обучить нейросеть данному стилю, чтобы она соблюдала стилистику, цветовую палитру и корректно изображала персонажей. А также поэкспериментировать и сгенерировать новые иллюстрации в этом стиле
В проекте я использовал:
• Stable Diffusion для обучения генеративной нейросети под заданный стиль • Google Colab для создания кода и генераций • Hugging Face для получения токена и обучения нейросети, а далее для загрузки полученной модели на сайт • Adobe Photoshop для оформления работ
Исходные изображения персонажей
Данным иллюстрациям характерна ограниченная цветовая палитра — пастельные тона, а также:
• один персонаж имеющий четкую человеческую анатомию • второй персонаж черный, с более гибкой абстрактной анатомией • нейтральный ровный лайн • минималистичный покрас • различные паттерны в дизайне окружения • мягкость форм
Несколько примеров из датасета
Процесс обучения
В Google Colab с компьютера были загружены изображения, по которым будет обучаться нейросеть. Далее были созданы подписи к каждому из них, чтобы нейросеть давала корректные подписи к данным изображениям
Далее был создан токен через Hugging Face, происходила настройка и вставка его в код
Приближаясь к тренировке я выбрал разрешение 512, выставил максимальный шаг тренинга на 700, а чекпоинт установил на 100, так тренировка нейросети заняла всего час
После сохранения модели на Hugging Face я приступил к генерации картинок
Первая генерация prompt = «in DOMOVDEV style, a woman sitting on a couch with a cat»
Первая генерация вышла не очень удачной, нейросеть дублировала персонажей, однако паттерны на фонах и художественную стилистику выполнила хорошо
Чтобы улучшить генерации я прописал в негативных промптах все то, чего хотелось бы избежать в финальных изображениях
in DOMOVDEV style, a woman sitting on a couch with a cat negative_prompt="blurry, low quality, distorted, ugly, bad anatomy, dual character, noise, artifacts, messy lines»,
in DOMOVDEV style, a woman sitting on a couch with a cat negative_prompt="blurry, low quality, distorted, ugly, bad anatomy, dual character, dual cat, noise, artifacts, messy lines» cross_attention_kwargs={"scale»: 0.85}
После того как я снизил влияние стиля до 85 процентов с помощью команды cross_attention_kwargs={"scale»: 0.85}, детали стали четче, но стиль стал считываться немного хуже
in DOMOVDEV style, a woman sitting on a couch with a cat negative_prompt="blurry, low quality, distorted, ugly, bad anatomy, dual character, dual cat, noise, artifacts, messy lines», cross_attention_kwargs={"scale»: 0.9}
С показателем cross_attention_kwargs={"scale»: 0.9} стиль стал считываться лучше
1. Влияние стиля = 0,8 2. Влияние стиля сниженное до 0,9
Также я смотрел как будут меняться генерируемые изображения в зависимости от изменения значений влияния стиля
Нейросеть
Нейросеть научилась рисовать персонажам четкий лайн, повторила стиль рисования одежды, паттернов и стилизацию лиц. Также заметно, что нейросеть учитывает заданную цветовую палитру и мягкие плавные формы
in DOMOVDEV style, a small black cat-like demon looking displeased at a messy kitchen
Исходная иллюстрация
Нейросеть хорошо скопировала художественный стиль, цветовую палитру, иллюстрации не выбиваются из серии. Также соблюла стилизованную анатомию обоих разных персонажей и поняла как рисовать одежду и паттерны на предметах из окружения
Итог
Чему удалось обучить нейросеть: • соблюдение цветовой палитры • соблюдение мягкости и скругленности форм • четкий ровный лайн • создавать паттерны в окружении




