
Идея проекта
Работая над календарём к юбилею Гатчины, захотелось обучить генеративную нейросеть Stable Diffusion, чтобы посмотреть, как будут выглядеть другие города Ленинградской области в том же стиле, что и основной проект.
Мой настольный календарь рассказывает о 12 памятных местах, где переплетаются история прошлого и современная жизнь. Он выглядит как набор диорам, которые образно рассматривают архитектуру города и изображают их в виде фантастической иллюстрации. Природа и цветы — неотъемлемая часть идеи проекта, так как он вдохновлён историческим фактом, когда в Гатчине объединился народ и государство, после открытия царских парков под общее пользование.
Пример иллюстраций из проекта к достопримечательностям: пожарная каланча, станция Мариенбург, круглая рига, Церковь Пресвятой Девы Марии Кармельской. Иллюстрации созданы с помощью Krea и Gemini.
Главная цель проекта — посмотреть, насколько точно нейросеть сумеет передать мой стиль, специально созданный для календаря, и как можно расширить идею до серии календарей для других городов.
Начало работы
Перед началом работы был собран датасет из 70 изображений (финальные иллюстрации и те, что не вошли в итоговый проект). Весь материал был создан с помощью Chat GPT (написание промтов), Ideogram и Krea AI (создание иллюстраций). Во время генерации исходников использовалась общая фраза «Natural details made in the spirit of macro illustrations by Ernst Haeckel, with ornamental symmetry reminiscent of spirography, with a neon depth that creates an atmosphere of futurism of the 1980s. The whole environment is filled with symbolism, similar to visions in a dream: a mixture of Jesus Bosch and Salvador Dali, but through the prism of Iglooghost — organic, cosmic. High detail, mystical, cosmic, hyper-realistic atmosphere».
Весь имеющийся датасет
В проекте были использованы следующие инструменты:
— Stable Diffusion (обучение генеративной нейросети под свой стиль); — Google Colab (выполнение кода и генераций); — Hugging Face (получение токена для обучения нейросети, загрузка полученной модели на сайт); — Figma (коллажирование готовых работ).
Описание процесса обучения
Работа началась с подготовки всех необходимых библиотек: Diffusers, DreamBooth и так далее. А также с загрузки датасета с компьютера в пространство Colab и их проверке.
Код с подготовкой
Затем, при проверке нейросеть дала ловольно точные подписи к каждому изображению. После были удалены конвейеры BLIP для освобождения памяти.
Код с процессом создания подписей
Далее был произведён логин с системой Hugging Face, после которого начался процесс тренировки нейросети по данному датасету. Были выбраны следующие параметры: разрешение 512, максимальный шаг тренинга 500, чекпоинт на 250. Такие настройки позволили сократить время ожидания, которое в итоге составило 1:03:43.
Код с обучением нейросети
В конце полученная модель была сохранена на Hugging Face. После данных действий можно было приступить к генерации изображений.
Последние шаги работы с нейросетью
Генерации
Выборг
Перед процессом генерации были выбраны города в Ленинградской области (Выборг, Луга, Пушкин, Шлиссельбург, Петергоф, Сосновый Бор, Кронштадт) и достопримечательности в них, которые было бы интересно показать в иллюстрациях.

Выборгский замок
Prompt: «Photo collage of Gatchina style, a brick castle that has a long, wide white tower with a green round roof. The building is located on an island surrounded by water and lilies. All the plants are geometric and fantastic».
Иллюстрация к выборгскому замку

Круглая башня
Prompt: «Photo collage of Gatchina style, a cylindrical small building with a red roof with a small spire of the same color. Small windows are randomly scattered all over the wall surface. The building is located on the riverbank, surrounded by round plants. Autumn colors: red, yellow and brown».
Иллюстрация к круглой башне
Луга

Собор Воскресения Христова
Prompt: «Photo collage of Gatchina style, a white church made of red and white brick with a hipped roof right in the center. There are small towers on the sides».
Иллюстрация к собору Воскресения Христова
Пушкин

Чугунные Египетские ворота
Prompt: «Photo collage of Gatchina style, а gate is in the form of Egyptian trapezoidal pyramids, which are covered with Egyptian hieroglyphs underneath. There is an iron fence with petal decorations between the two pillared gates.
Иллюстрация к чугунным Египетским воротам

Белая башня
Prompt: «Photo collage of Gatchina style, a white completely rectangular tower with green decorations and green fences on the facade. It stands in the middle of the park, with paths leading to it».
Иллюстрации к белой башне

Екатерининский дворец
Prompt: «Photo collage of Gatchina style, а long blue palace with white columns and gold decorations. It snakes all over the hill. Lots of statues. A flat, well maintained park all around».
Иллюстрации к Екатерининскому дворцу
Шлиссельбург

Крепость Орешек
Prompt: «Photo collage of Gatchina style, а stone medieval low fortress on the island. There’s water all around! The towers of 6 pieces on the edges of the fortress have conical maroon roofs».
Иллюстрация к крепости Орешек
Петергоф

Большой дворец (Петродворец)
Prompt: «Photo collage of Gatchina style, а fountain complex, standing on the slope of a hill. Each floor has its own fountain and its own golden statue. Water is pouring out of fountains».
Иллюстрация к Большому дворцу
Сосновый Бор

Собор Божьей Матери «Неопалимая Купина»
Prompt: «Photo collage of Gatchina style, a triangular monumental church with one golden dome. The church consists of white and black stripes».
Иллюстрации к собору Божьей Матери «Неопалимая Купина»

Скульптура «Стойкий Оловянный солдатик»
Prompt: «Photo collage of Gatchina style, а Black sculpture of a sturdy tin soldier near a black fence in a rock».
Иллюстрации к скульптуре «Стойкий Оловянный солдатик»
Кронштадт

Деревянный маяк
Prompt: «Photo collage of Gatchina style, a wooden one lighthouse with a red wall in the middle of the water, to which there is one massive road».
Иллюстрация к деревянному маяку

Форт «Великий Князь Константин»
Prompt: «Photo collage of Gatchina style, а round, very thick one round wall on the island. There’s only water around and nothing else».
Иллюстрации к форту «Великий Князь Константин»
Выводы
Анализируя полученные изображения, можно сделать вывод, что нейросеть научилась создавать точную объёмную архитектуру по промту и сохранять её узнаваемость с оригиналом, добавляя необходимый фантастический флёр. Все объекты находятся в изобилии растительности, что было важным критерием при обучении компьютерной модели.
Нейросеть также отлично поняла, что здания надо располагать в центре композиции или выше середины.
Однако большинство растений достаточно размыты и через чур сильно похожи на реальную флору, в то время как в датасете было достаточно много примеров со сказочными и геометричными цветами. Есть только несколько примеров, когда нейросеть «постаралась» с растительностью.
Хороший пример растительности
Неожиданно, что компьютерная модель попыталась изобразить животных на иллюстрациях, хотя в датасете с ними была только одна фотография, потому что другие нейросети в процессе работы над календарём отказывались изображать фауну. У нашей нейросети тоже оказались с ней некоторые проблемы.
ИИ лебеди и ИИ козы
Гораздо лучше, несмотря на то, что в датасете нет изображений людей, нейросеть справилась со скульптурой оловянного солдатика и другими.
Скульптура из иллюстраций к Большому дворцу, оловянному солдатику и Екатерининскому дворцу
Также есть иллюстрации, где нейросеть полностью скопировала композицию, идею и цвета из исходного изображения.
Пример схожей композиции
Интересно, что в процессе генераций один раз нейросеть создала буквальный коллаж, что вдохновило на интересный эффект, который можно будет использовать в будущем.
Случайная генерация для Большого дворца (Петродворец)
В итоге получилось обучить нейросеть создавать иллюстрации со сказочной архитектурой, окружённой природой, что может помочь создать необходимое настроение для серии календарей для городов Ленинградской области. Если продолжить обучать компьютерную модель, то будут получаться более точные результаты.