Исходный размер 1140x1600

Изразцы: дообучение Stable Diffusion

Концепция

Одним из примеров классического русского творчества являются изразцы. На них могут существовать как сюжеты, так и абстракции. Их вариант с нанесением глазури и стал примером для дообучения генеративной нейросети Stable Diffusion, благодаря своей текстуре, объему и цветам.

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

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

big
Исходный размер 2480x2480

Примеры исходных изображений

Изразцы имеют определенные, немного приглушенные, цвета и палитру. Также, плитка имеет текстуру и блеск глазури, который проявляется при разных ракурсах и съемке. Целью было обучить нейросети создавать фотографии плитки именно с этими отличительными особенностями.

big
Исходный размер 3508x2480

После установки библиотек и нужного скрипта, я загрузила подготовленный датасет из сорока двух изображений на локальный диск в Google Colab и обратилась к ним с помощью кода.

Исходный размер 3508x2480

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

Исходный размер 3508x2480

Теперь можно было перейти к началу обучения. Я использовала предварительно обученную модель BLIP от Salesforce для создания подписей к изображениям и дальнейшего создания промптов. Также импортировала torch для дальнейших операций и проверила, доступна ли CUDA.

Исходный размер 3508x916

Для поиска файлов, соответствующих шаблону, я и импортировала glob, а для работы с файлами изображений — PIL.Image. Также, добавила в работу json для создания файлов в данном формате.

Далее запустила код для описания каждого изображения из датасета с помощью промпта и вывела эти описания с префиксом «photo of GLAZED tiles».

Исходный размер 3508x1332

Далее я импортировала gc для удаления ненужной информации, занимающей GPU. Добавила locale для того, чтобы задать использование кодировки UTF-8 для обработки текста, и запустила notebook_login из huggingface_hub для загрузки частных моделей и выгрузки учетную запись Hub.

Также, для дальнейших настроек дообучения модели, я запустила код «! accelerate config default».

Исходный размер 3508x2480

Настройки для обучения собственной генеративной модели «glazed_tile_square_LoRA»

После обучения модели «glazed_tile_square_LoRA», я проверила сохранение обученных весов LoRA и создала репозиторий для модели. Далее загрузила веса LoRA в Hugging Face Hub и убедилась, что модель сохранилась, перейдя по ссылке, которая появилась.

Исходный размер 3508x2480
Исходный размер 3508x520
Исходный размер 3508x1218

Теперь оставалось только сгенерировать финальные изображения с помощью модели.

Исходный размер 3508x659

Пример промпта для генерации итоговой серии изображений

Итоговая серия

Итоговая серия вышла именно такой, как я и ожидала: приглушенные цвета, сохранение объема и текстуры, блеск. Также, у модели есть возможность генерации как абстрактных, так и конкретных сюжетов.

Исходный размер 2480x3315
Исходный размер 1024x1024
Исходный размер 3508x1538
Исходный размер 1024x1024
Исходный размер 3508x1538
Исходный размер 1024x1024
Изразцы: дообучение Stable Diffusion
Проект создан 30.03.2025
Мы используем файлы cookies для улучшения работы сайта и большего удобства его использования. Более подробную информац...
Показать больше