Original size 1160x1600

Генерация абстрактного искусства с использованием Stable Diffusion и LoRA

PROTECT STATUS: not protected
6

Тема проекта:

Обучение модели Stable Diffusion (через LoRA-адаптацию) на абстрактных картинах с целью генерации оригинальных изображений в стиле экспрессивной живописи.

Концепция:

Идея проекта заключается в том, чтобы с помощью дообучения нейросети на выборке абстрактных произведений искусства получить модель, способную воспроизводить динамику мазков, цветовые акценты и визуальный ритм, характерный для современной абстракции. В результате должна формироваться серия изображений, где ИИ создает новые варианты «виртуальных картин»

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

0

Результаты генерации

0

Каждое изображение сгенерировано по одному из случайных промптов из заранее подготовленного списка, описывающего художественный стиль («expressive abstract painting», «color field composition», «geometric abstraction» и т. д.).

Развёрнутый комментарий и визуальный анализ

Анализ результатов:

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

В некоторых примерах заметно влияние геометрической композиции — это следствие разнообразия исходных данных.

Появились вариации по плотности мазков и степени контраста: нейросеть адаптировала паттерны кистевых движений, создавая «виртуальные полотна».

Соответствие концепции:

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

Jupyter/Colab ноутбук

https://drive.google.com/drive/folders/1fQZ7MKOpKxe9Wjta7bKVx7X4_cXhhipZ?usp=sharing

create: Код загружает модель Stable Diffusion, подключает обученные LoRA-веса и генерирует серию изображений по текстовым промптам. Основные функции:

from_pretrained () — загрузка базовой модели.

load_state_dict () — подключение LoRA-весов.

pipe () — генерация изображения по промпту (обратная диффузия).

save () — сохранение результата.

main:

Общее назначение

Код обучает адаптацию LoRA (Low-Rank Adaptation) для модели Stable Diffusion, чтобы научить её создавать изображения в стиле абстрактной живописи.

Основные блоки 1. Импорты и конфигурация

Импортируются библиотеки PyTorch, diffusers, PEFT, tqdm и PIL. Настраиваются пути (DATA_PATH, OUT_PATH), параметры обучения (размер изображений, количество шагов, скорость обучения и т. д.).

2. Определение устройства

Выбирается вычислительное устройство:

GPU (cuda) — при наличии видеокарты,

MPS — для Mac,

CPU — по умолчанию.

Тип данных (DTYPE) задаётся в зависимости от устройства.

3. Функции

seed_all () — фиксирует случайность для воспроизводимости.

collect_images () — собирает пути всех изображений из указанной папки.

4. Класс AbstractDataset

Создаёт обучающий датасет:

Загружает изображения из папки,

Преобразует их (Resize, Normalize),

Добавляет случайный текстовый промпт, описывающий стиль картины.

Возвращает пары (изображение, текст) для обучения.

5. Функция train_lora ()

Основная логика обучения:

Загружает модель Stable Diffusion v1-5.

Настраивает и подключает LoRA к UNet.

Для каждой итерации:

Кодирует изображение в латентное пространство (VAE).

Преобразует текст в векторные эмбеддинги (Text Encoder).

Добавляет случайный шум к латентам.

Прогоняет через UNet, который учится предсказывать шум.

Считает MSE-потери (Mean Squared Error) между предсказанным и реальным шумом.

Обновляет веса с помощью оптимизатора AdamW.

Периодически сохраняет чекпоинты LoRA-весов.

После завершения — сохраняет финальную версию в final_lora.

Использование GenAI

В проекте дополнительно использовался ChatGPT (GPT-5) для:

составления промптов для генерации;

формулировки текстовых описаний для caption-пар;

Генерация абстрактного искусства с использованием Stable Diffusion и LoRA
6
We use cookies to improve the operation of the HSE website and to enhance its usability. More detailed information on the use of cookies can be fou...
Show more