Исходный размер 1140x1600

SDXL и бесшовность

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

Концепция

В данном исследовании я попытался выяснить, насколько эффективно генеративное ИИ в генерации seamless (бесшовных) текстур. Такие текстуры используются в разработке игр и 3D графике, поэтому мне такая модель была бы полезна. Однако Генеративный ИИ известен своими нарушениями консистентности при работе с графикой, поэтому мне понадобилось это для начала проверить, самому.

Инструменты и Исходники

Для создании своей модели, seamlesstexture, я воспользовался кодом из Google Colab, а также изображениями текстур 1024 на 1024 пикселя, взятых с сайта polyhaven.com. Все изображения на сайте распространяются под лицензией CC0. Ниже пять примеров текстур, которые я использовал для обучения модели:

big
Исходный размер 1280x256

Всего для обучения использовалось 25 подобных изображений, а также повышенное кол-во степеней обучения (--max_train_steps=1000) для повышенной точности результата. Для создания текстовых описаний (подписей) к обучающим изображениям использовалась модель BLIP (Salesforce/blip-image-captioning-base), что позволило автоматизировать подготовку датасета.

Результаты работы

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

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

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

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

Возможно, для обучения бесшовности требуется больше данных (например 50–200 изображений, а у меня было 25). Текстуры с сайта polyhaven.com уже оптимизированы для тайлинга, но модель могла не уловить этот аспект, фокусируясь на визуальном содержании, а не на математической повторяемости. Это потому что модель SDXL изначально не оптимизирована для создания тайловых текстур, т. е. она «думает» в категориях целостных изображений, а не повторяющихся паттернов.

Вывод

Результаты попытки обучения модели для генерации бесшовных текстур на основе 25 изображений с сайта polyhaven.com показали, что модель успешно усвоила визуальные паттерны, цветовые схемы и общую эстетику текстур, однако не смогла обеспечить идеальную бесшовность. На стыках изображений наблюдаются различия в цвете, яркости и форме элементов. Вероятно, для достижения качественного тайлинга требуется большее количество обучающих данных и, возможно, специализированная архитектура или дополнительные техники обучения. Тем не менее, эксперимент подтвердил, что даже с ограниченным датасетом SDXL способен генерировать визуально убедительные текстуры, близкие по стилю к исходным.

Ссылки

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