ВСТУПЛЕНИЕ
Геральдическое искусство известно со времен Классического Средневековья и имеет богатую историю.

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

- Поскольку геральдика представляет собой структурированную и эстетически выразительную систему, она хорошо подходит для машинного обучения.
- Генеративные модели, такие как Stable Diffusion, способны достаточно точно воспроизводить стилистические особенности изображений, а характерные для них ошибки распознавания текста могут органично вписаться в эстетику геральдики, создавая эффект стилизации под средневековые изображения.
- Большинство государственных гербов находятся в открытом доступе, что позволяет собрать качественный датасет без нарушения авторского права.
ДАТАСЕТ


Для обучения модели был собран датасет, состоящий из 184 гербов различных стран мира.
Все изображения были приведены к единому формату: -конвертированы в PNG; -масштабированы до разрешения 512×512; -приведены к квадратному соотношению сторон (1:1);
Это позволило создать однородный и пригодный для обучения набор данных.
Процесс обучения модели
Для обучения использовалась архитектура Stable Diffusion XL с дообучением через метод DreamBooth LoRA, который позволяет адаптировать модель под конкретный визуальный стиль.
Процесс включал несколько этапов:
1. Подготовка данных

С помощью Python-скрипта: -Датасет с изображениями загружался в colab и автоматически распаковывался -SVG-файлы конвертировались в PNG -Все изображения нормализовались по размеру и формату.
2. Обучение

Модель обучалась на основе промпта heraldic emblem Это позволяло закрепить за LoRA конкретный визуальный стиль.
Было проведено несколько «прогонов» обучения:

100 шагов (тестовый этап)
На этом этапе модель начала воспроизводить базовые элементы геральдики: щиты, симметрию, орнаменты.



500 шагов
На этом этапе были введены дополнительные объекты — животные, которых не было в исходном датасете (бегемоты, свиньи и овцебыки).
Это позволило проверить, как модель синтезирует новые объекты и интегрирует их в изученный стиль.
В результате появились изображения, напоминающие средневековые иллюстрации, выполненные в геральдической манере.



1000 шагов
Качество изображений заметно улучшилось:
— достигнута большая симметрия — композиции усложнились — увеличилось разнообразие форм и декоративных элементов


Нейросеть на данном этапе уже создавала убедительных насекомых, мифических и реальных животных, а ее неумение грамотно писать создавало ощущение использования какого-то утерянного или просто неизвестного зрителю языка, что само по себе вполне типично для геральдических надписей.





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


Генерация
Расширение модели

На этом этапе стало очевидно, что базовая генерация не учитывает различия между геральдическими традициями разных культур.
Для решения этой задачи был создан отдельный блок генерации, в котором к европейской геральдике, наследующей средневековым символам, были добавлены республиканские печати, созданные в противовес европейским символам в XIX веке; традиционные буддистские и исламские символы; советская эмблематика (ХХ век).

Для каждой из традиций заданы:
-характерные стили -типичные элементы -допустимые животные (или их отсутствие)
Например, в качестве образца буддистской эстетики использовалась символика монархий юго-восточной Азии: изображения экзотических животных и мифических существ, а также орнаментов.



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



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


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

В рамках проекта, помимо обученной модели Stable Diffusion XL с LoRA, использовались генеративные ИИ-инструменты ChatGPT и Gemini.
Они применялись при разработке и отладке Python-кода (в формате «pair-programming»), включая помощь в реализации препроцессинга датасета (конвертация SVG в растр через cairosvg, центрирование и обрезка изображений) и оптимизации работы в Google Colab.
Также LLM использовались для формулирования и улучшения текстовых промптов, генерации вспомогательных списков (например, животных) и редактирования текстовой части проекта.
Все ключевые решения, отбор изображений и финальная редакция выполнены автором самостоятельно.
Ссылки на использованные нейросети




