
Идея
Анри де Тулуз-Лотрек — французский художник-постимпрессионист. В своих произведениях он передавал атмосферу Парижа конца XIX века. Отличительная черта его картин — это характерные стилизованные лица людей и работа с цветом. Живописец, работая с цветом, сочетал пастельные цвета с яркими и чистыми, из-за чего на его полотнах присутствуют приятные контрасты в то же время много воздуха и ощущение туманного окружения. Идея данного проекта это обучение модели Stable Diffusion для создания генераций в стиле произведений Анри де Тулуза-Лотрека.

Анри де Тулуз-Лотрек 1864 - 1901

Анри де Тулуз-Лотрек 1864 - 1901
Анри де Тулуз-Лотрек 1864 - 1901
Датасет
Картины Анри де Тулуз-Лотрека 1864-1901
Для выполнения поставленной задачи был создан датасет, в который вошли 50 разнообразных произведений Анри де Тулуз-Лотрека. Тем не менее, на каждом изображении можно выделить черты, благодаря которым стиль художника стал узнаваемым. Благодаря такому стилистическому насыщению в собранном датасете, модель Stable Diffusion сможет воспроизвести в генерациях выбранный стиль.
Серия полученных генераций


Первые сгенерированные изображения
Самые первые генерации получались не совсем похожие, модель использовала бледные однотонные оттенки. Полученные изображения были похожи на старые снимки или карандашные наброски, что не было характерным для стиля Анри де Тулуз-Лотрека.
Поэтому для следующих генераций в промт были добавлены такие словосочетания как: более яркие, чистые цвета, светлые оттенки.


Сгенерированные изображения
После изменения промта полученный результат стал соответствовать поставленной задаче.


Сгенерированные изображения
В основном живописец вдохновлялся танцовщицами и балеринами в тогда привычной для них обстановке, например бары, танцевальные залы, гримерки. Фон на картинах Тулуз-Лотрека как бы сливался и представлял собой нечто общее, размытое, но дополняющее и выделяющее образ прекрасных дам.


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


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


Сгенерированные изображения
Далее промт незначительно менялся, использовались такие запросы как: портрет женщины в платье, крупный план, наброски, две женщины-балерины. В каждом полученном изображении чувствовался стиль Анри де Тулуз-Лотрека.


Сгенерированные изображения


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


Сгенерированные изображения


Сгенерированные изображения
Следующим шагом было добавление в промт: танцующая девушка в платье, поэтому модель начала выдавать девушек в динамике, с развивающимися платьями.


Сгенерированные изображения


Сгенерированные изображения


Сгенерированные изображения


Сгенерированные изображения
В заключении можно сказать, что модель справилась с задачей и использовала те же приемы и стилистические решения, что и Анри де Тулуз-Лотрек в своих произведениях.
Обучение модели
Процесс обучения происходил в среде Google Colab — облачный сервис для программирования на Python.
Фрагмент кода
Первым шагом было переключение среды выполнения с CPU на GPU, так как GPU позволяет выполнять задачи гораздо быстрее.
Фрагмент кода
Далее нужно было установить важные составляющие и библиотеки с GitHub.
Фрагмент кода
Далее в коде происходила работа с датасетом. Его нужно было добавить в виде заготовленных файлов и дать ему название.
Фрагмент кода
Чтобы убедиться, что все файлы из датасета успешно подкреплены, часть из них нужно было вывести на экран.
Фрагмент кода
В этом фрагменте кода выполняется подготовка датасета для того, чтобы обучать нейросеть. Были созданы JSONL-файлы с подписями к картинкам.
Фрагмент кода
В этой части кода осуществляется установка параметров и само обучение модели Stable Diffusion.
Фрагмент кода
После конца обучения, полученные данные были загружены на платформу Hugging Face. Там они будут использоваться для собственных генераций.
Фрагмент кода
Последний шаг — генерация изображений по запросу. Промт можно было менять и дополнять, готовые изображения выводились на экран.
Источники изображений https://gallerix.ru/storeroom/1109489640/
Использованные нейросети https://huggingface.co/docs/transformers/en/model_doc/blip — BLIP для генерации текстовых описаний к изображениям https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0 — Stable Diffusion XL base 1.0 для генерации изображений