Исходный размер 912x1280

Кроличьи плюшки. Обучение нейросети.

Проект принимает участие в конкурсе

Цель проекта

Цель проекта — обучить нейросеть Stable Diffusion рисовать специфический объект — плюшевого зайчика, сохранив при этом все его особенности в виде цвета, телосложения и посадки глаз, сохранить узнаваемость персонажа, чтобы в каждой генерации он выглядел одинаково.

Исходные изображения для датасета (парочка примеров)

Исходными изображениями послужили 12 фотографий плюшевого кролика, сфотографированного с разных ракурсов и на разных фонах для более эффективного обучения нейросети. Разрешение фотографий — 512×512, изначально был выбран размер 1800×1800, но впоследствии пришлось от него отказаться для ускорение обучения.

Процесс обучения нейросети

Для обучения я использовала Kaggle и исходный код, что был указан в задании, работающий с DreamBooth LoRA на базе Stable Diffusion XL. Отобрав датасет из 12 фотографий игрушки, я откадрировала их в квадратный формат 1800×1800 (который позже изменила на 512×512 из-за слишком долгого обучения нейросети)

Исходный размер 418x481
Исходный размер 845x282

TOK toy bunny обозначает токен конкретного зайца, использованного в датасете для обучения нейросети

Исходный размер 1075x605

Запуск процесса обучения LoRa

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

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

Исходный размер 1024x1024

промт — «a photo of TOK toy bunny sittin on a yellow blanket»

1 промт — «a photo of bunny with cool glasses» 2 промт — «a photo of bunny in a cardboard box»

1 промт — «a photo of TOK toy bunny un grass» 2 промт — «a photo of multiple bunnies»

1 промт — «a photo of TOK toy bunny in a sunny beach» 2 промт — «a photo of TOK toy bunny with lots of bunnies around»

Иногда у нейросети случались небольшие ошибки в изображениях, но это было достаточно редко

Исходный размер 1024x1024

промт — «a photo of TOK toy bunny in a human hand»

Исходный размер 1024x1024

промт — «a photo of TOK bunny sitting on a table»

Такие ошибки в генерации фона зачастую исправляются более точным описанием того, что мы хотим увидеть, например «a photo of bunny sitting on a sunny beach» — нейросеть сразу понимает, что за фон нужно вставить и не «додумывает» все самостоятельно.

Итог

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

Кроличьи плюшки. Обучение нейросети.
Проект создан 24.03.2026
Мы используем файлы cookies для улучшения работы сайта и большего удобства его использования. Более подробную информац...
Показать больше