Концепция
Это проект по созданию нейросети генерирующей изображения садов.
Почему именно сады? Мне всегда нравилась концепция «идеального места» — уединенного уголка, где можно отдохнуть. Я подумал: а что, если можно будет просто описать такой сад, и нейросеть его нарисует? Причем не абстрактно, а в том стиле, который я ей задам. Это могло бы быть полезно ландшафтным дизайнерам или просто для вдохновения.
У данного проекта две цели: научить готовую нейросеть генерировать изображения садов, которые выглядят как настоящие фотографии, следуя моим описаниям и не просто пользоваться готовыми сервисами вроде Midjourney, но и понять механизм их работы.
Процесс работы
Сначала я отобрала изображения для датасета. Я выбрала маленькое количество изображений так как хотела обучить нейросеть генерировать более конкретные результаты.
Все фотографии подогнаны под пропорции 1: 1, так как это формат генерируемых изображений
Я загрузила изображения в среду Colab, создав для них отдельную директорию. Далее нужно было так-же выбрать кодовую фразу, которая будет общим промптом для всех изображений, в моем случае я выбрала «photo of a garden».
Затем ноутбук автоматически создал из фотографий датасет для обучения, и пропустил через текстовый энкодер, чтобы связать каждое изображение с текстовым описанием начинающегося с фразы «photo of a garden».
В качестве подготовки тренировке нейросети мне понадобилось использовать сервис https://huggingface.co чтобы создать уникальный токен для нее, что позволит мне ее сохранить на данном сервисе. Благодаря этому я смогу к ней возвратиться в любой момент после ее финализации.
Следующий шаг конфигурация обучения модели. Мне нужно было заново указать параметры директорий и выбранный мною промпт. Остальные параметры, такие как количество шагов (steps) я не меняла так как они соответствую поставленной мной задачей.
Далее нужно было всего лишь запустить саму тренировку модели. На данный процесс ушло 35-40 минут.
После чего мне осталось только загрузить модель на HuggingFace.
Нейросеть готова к использованию. Я могу генерировать изображения как в самом коде так и на странице модели на HuggingFace.
Результаты
Для проверки работы нейросети я использовала стандартный промт «photo of a garden». Нейросеть успешно выдавала изображения, но они могут показаться простоватыми
Поэтому я решила поэкспериментировать с разными промптами меняя детали, подробности и саму длинну промптов.
Ниже картинки по промптам:
«photo of a garden with a statue on the right»
«photo of a garden, a statue in the middle of a garden, a field of orange flowers with mountains in the background»
Картинка по промту: «A photograph of a forgotten Victorian garden in the soft, hazy light of dawn. Weathered stone statues—a sorrowful angel, a robed figure missing an arm, and a small rabbit covered in ivy—are half-hidden amongst overgrown lilac bushes, wild rosemary, and untended rose thickets. A low, gentle mist clings to the mossy flagstone path, and dewdrop beads glisten on every leaf and petal. The atmosphere is deeply peaceful, melancholic, and timeless, as if capturing a moment suspended between dream and memory. Style of a vintage silver gelatin print with a soft focus and subtle, muted tones.»
Картинки по промтам:
«A misty, dawn garden with weathered stone statues peeking through the foliage, violet red and orange flowers surround the statues»
«photo of a garden, misty, weathered statues on the right, fountain in the center, flowers and bushes surround them»
Картинка по промпту:
10 «photo of a garden, a house, a tree behind it, orange and violet flowers surround it»
Итог
Модель не просто скопировала изображения из датасета, а усвоила концепт нашего сада и смогла применить его в новых условиях, описанных в запросе.
Получившаяся модель лучше всего работает с промптами небольшой длинны, которые по очереди коротко описывают элементы изображения без излишнего описания подробностей и атмосферы.




