Создаем пак дизайн ассетов с помощью нейронки
В этой небольшой заметке мы расскажем как можно с помощью нейросетей создать пак уникальных стилизованных ассетов, которые Вы дальше можете использовать для доработки в Photoshop и других программах, или просто использовать полученные абстрактные формы в своих экспериментах :)
Возможности нейросетей для генерации ассетов поражают: можно создавать уже практически всё, от прототипов иконок до абстрактных элементов.
Но мы можем столкнуться с проблемой консистентности стиля при генерациях, когда нужно 50-100 элементов в одной стилистике, а при использовании даже одного и того же промпта не всегда можно добиться желаемого результата. Или, например, нам нужно сгенерировать какой-то конкретный объект или элемент в этом стиле, а используя Start image и промпт хорошего результата не добиться.
Для этого самый простой способ – обучить модель и, используя стартовое изображение, генерировать нужные изображения по референсу. Для этого даже не нужен особый промпт!
Примеры дизайн-паков, которые были сделаны с помощью описанного ниже метода в рамках #NeuroChallenge совместно с потрясающей Щёлочью, студией и школой современного цифрового дизайна.
Шаг 1. Собираем и генерируем референсы
Представим, что мы хотим генерировать дизайн элементы в стиле металлических блобов и превращать объекты в металлические деформированные ассеты. Для этого мы создали несколько референсов в Midjourney
В Phygital+ вы можете использовать все самые топовые нейросети в одном месте: получить генерации в Midjourney, DALL-E 3, Stable Diffusion, выбрать наилучшие из них и далее использовать их же для обучения.
Более того, с помощью GPT-4 Vision можно получить промпт из любого вашего референса и на его основе сгенерировать больше изображений для обучения :)
Для обучения модели рекомендуется использовать минимум 15 изображений (больше рекомендаций — в нашей вики), в нашем примере мы возьмем 18.
Шаг 2. Обучение в несколько кликов
Для удобства воспользуемся Train Panel, отдельным приложением Phygital+ для обучения моделей. В нем с помощью простого воркфлоу в 3 шага мы можем обучить нейросеть на чем угодно от персонажей и человека до стиля, продукта и дизайн элементов. Мы специально упростили процесс обучения до нескольких кликов.
Всё, что вам нужно сделать, – это придумать уникальное название и загрузить референсы.
Переходим в Train Panel, нажимаем Train New Model. В нашем случае мы обучаем на металлических блобах, для этого на первом экране в Category мы выбираем Object. В Type – Element.
Теперь впишем имя. Чем уникальнее имя вы дадите, тем лучше для обучения и генерации, и лучшеи спользовать слово, которое нейросеть не знает. Можно начать с простого liquidmetal в одно слово.
Мы дали нашей модели имя, и теперь можно перейти к этапу настроек. Поскольку в интерфейсе по умолчанию уже выбраны оптимальные параметры под каждую категорию, мы можем спокойно пропустить этот шаг и перейти к следующему шагу :)
Загружаем референсы через Drag and drop или по нажатию на Upload.
Можно начинать обучение! На экране покажется сообщение о том, что модель скоро обучится, и после этого (примерно через 20 минут) Вам на почту придет письмо, что модель готова к использованию.
Шаг 3. Генерируем ассеты
Наша модель обучилась, самое время начать экспериментировать!
В Phygital+ добавляем ноду на воркспейс Stable Diffusion 1.5, в ниспадающем списке Models ставим прочерк. У нас разблокировались My models, в которых теперь выбираем нашу только что обученную модель, она будет самая первая в списке.
Как только мы выбрали модель, у нас автоматически подставляется необходимый промпт для активации модели (уникальное имя + выбранная категория, в нашем случае – liquidmetal Element).
Запускаем генерацию, нажав на Start, и т.к. у нас в промпте не было дополнительных слов, мы получаем изображения, похожие на наш изначальный датасет. Так мы проверим, что модель обучилась успешно :)
Теперь перейдем к самой увлекательной части – генерации необычных форм, дизайн-ассетов, превращение объектов в блобы из референса.
1 способ. Генерация с помощью ControlNet.
ControlNet – нейросеть, которая берет изначальное изображение и на основе промпта вписывает в контуры или формы из картинке нужные объекты по промпту. В этом случае нейронка не учитывает цвета на изображении, она видит его черно-белым и генерирует на основе этого (или же в виде карт глубины или нормалей)
Поэтому с ControlNet мы можем преобразовать материал, цвет и внешний вид любой формы с нашего изображения.
Логика работы с ControlNet с обученной моделью такая же, как и в SD 1.5 – добавляем ноду, выбираем обученную модель в My models.
Возьмем, например, логотип Phygital+, загрузим его на рабочее пространство с помощью Import files и подключим как Start Image в ControlNet. Далее в настройках в Type выберем Edge (это модель Canny), это поможет нам лучше сохранить линии. Нажимаем Start и получаем наш логотип в стилистике металлических блобов из нашего датасета.
Экспериментируем с любыми формами, например, для создания букв в определенной стилистике, чтобы сохранить определенный шрифт :)
2 Способ. С помощью Start Image в Stable Diffusion 1.5
Этот способ более интересный, потому что нейронка берет форму, композицию и цвета и позволяет регулировать степень изменения изначального объекта, таким образом можно играться больше с формами и получать более абстрактные стилизованные дизайн ассеты.
Для того, чтобы преобразовать любое изображение, загружаем его на воркспейс и соединяем с Start image в ноде Stable Diffusion 1.5. Выставляем параметр Start Image skip на 0,6. В промпт можно добавить, что у нас на картинке (в нашем случае, кролик), но это необязательно.
Воспользуемся дальше нодой Upscale для повышения качества, и вот такого прекрасного металлического кролика мы получили.
Металлизируем любой предмет :)
Для абстрактных фигур выставляем параметр Start image skip на 0,7 и так добьемся более сильного изменения формы. Чем ниже Start Image Skip, тем ближе к оригиналу получится Ваша генерация (и тем меньше будет применяться стиль)
Например, можно попробовать преобразовать те же буквы, создать целый алфавит и использовать их дальше в своих работах:
Или превратить любую иконку в новый необычный ассет
Или расплавить любую фотографию
Возможности безграничны!
В рамках нашего челленджа с Щелочью, участники обучали свои работы и на рентгеновских снимках,на туши, на стиле фильмов Дэвида Кроненберга. Результаты просто получаются фантастическими, ограничение – только ваша креативность :)
Для помощи в креативности
Для поиска вдохновения советуем Вам изучить нашу промпт коллекцию, в которой представлены примеры промптов по разным юзкейсами и стилям.
Также при наличии референса Вы можете воспользоваться нодами Describe Image и GPT-4 Vision для получения промпта и дальнейшей генерации изображений в похожем стиле (промпт для GPT-4 Vision: describe this image in this way in one sentence: object, object's features, specific style of image with brief description of color story. Dont use points only commas, dont use capital letters)
Или же в целом просто спросить у ChatGPT идеи для стилей
Протестировать всё описанное выше, включая обучение, Midjourney, DALL-E 3, GPT, Stable Diffusion и генерацию с моделями, можно уже сейчас в Phygital+ :)