
Идея проекта
Для изучения стиля художника и применения его в генерации изображений я выбрала свою любимую художницу Lola Dupre. Лола создаёт гигантские фотоколлажи из частичек того же изображения, что в итоге должно получиться. Она собирает разные необычные композиции и формы, а в особенности, она создаёт очень крутых котов, их я и решила использовать для обучения генеративной модели LOLA

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

Для обучения я выбрала 30 самых ярких картинок котов, каждую из которых я подогнала под размер 1:1 с разрешением 512×512 пикселей (для оптимизации работы)

Серия итоговых фотоколлажей в стиле lola style
Изначально моей целью было создать серию домашних животных в стиле Lola Dupre. Я попробовала генерировать не только кошечек, но и собак. В целом, я довольна результатов и тем, как диффьюжен справилась с задачей с учетом того, что она обучалась только на композициях с кошечками. Кстати эти коллажи похожи на те, что делает Lola (она складывает не только котов, но и собак). Хотя, если смотреть на качество передачи эффекта наложения бумажки на бумажку, то тут оно страдает


В итоге я решила сгенерировать серию кошечек. В начале я подстраивала параметры для того, чтобы стиль считывался. Эффект наложения бумажки на бумажку очень тонкий, поэтому приходилось долго менять настройки, отвечающие за детализацию, чтобы было видно, что это фотоколлаж (например, шаг с 25 до 50, checkpoint с 250 на 500 и lora_scale до 1). Также изначально я обучала модель на 20 картинках, что оказалось мало для передачи стиля (картинка с шестью собаками как раз первые попытки, prompt: «photo collage in LOLA style, dog»)


Вот такая серия разных кошек, разных окрасок и цвет глаз у меня получилась. В процессе работы заметила, что в этом случае, чем проще промт, тем лучше результат


Также я пробовала промты с запросом двух животных, с чем нейронка справлялась чуть хуже (в силу того, что на исходных изображениях были только одиночные коты)




Процесс обучения
Вся работа по обучению генеративной модели была выполнена в Google Colab.
Перед началом работы я загружаю все библиотеки и обучающий скрипт с GitHub.
Далее я начинаю работать с датасетом LOLA_DUPRE. Импортирую его, загружаю нужные картинки в формате jpeg необходимого размера 1:1 и 512×512
Далее с помощью кода я запускаю анализ каждого изображения и создание к нему уникального описания вместе с caption_prefix = «LOLA style, "
После создания описаний и характеристик картинок я логинюсь на Hugging Face, чтобы потом сохранить там готовую модель
После всех предыдущих шагов я наконец запускаю обучение модели с ТОК «LOLA style». Для начала это базовые настройки с max_train_steps=500 и checkpointing_steps=250
В процессе генерации я методом проб меняла настройки checkpointing, step и lora_scale, чтобы улучшить узнаваемость стиля и повысить детализированность изображения
Вывод
В конце обучения я чувствую, что довольна результатом. Поняла, что иногда излишние уточнения в промтах запутывают нейронку и она выдаёт не то, что ты ожидаешь. Также интересно, как от совсем небольшого сдвига, например, в шаге, меняется передача стиля. Мне кажется, серия котов удалась и диффюжен справилась
вот такие пироги