Мини-гайд по созданию нейродевочки
Всем привет! Периодически в комментариях люди просят рассказать о том, как создать нейродевочку со "стабильной" внешностью. Есть несколько полезных статей на просторах интернета(например эта), в этом гайде расскажу и покажу те же подходы, что используются при создании Маши.
Дисклеймер:
В этом посте не будет досконально описана работа с форжом и другими плагинами, предполагается, что вы уже в контексте, однако если это не так, то пишите в комменты и я сделаю отдельные посты с подробным описанием установок/настроек. Также будут конкретные инструменты и конкретные модели, эксперименты/аналоги уже на ваше усмотрение.
Что вам потребуется:
Первый шаг. Генерация портрета
Первый и самый важный шаг - сгенерировать портрет вашей девочки. Это то лицо которое дальше поедет во все сюжеты. ВАЖНО понимать, что лицо, сгенерированное на этом этапе, не будет точь в точь передаваться дальше, но вы всё равно будете получать предсказуемый результат при "переносе" лица если используете одну и ту же базовую модель, а не прыгаете между чекпоинтами.
Инструкция к применению:
Представляем в голове как должна выглядеть девочка. Возьмем стандартный типаж: рыжая кудряшка с зелеными глазами и веснушками. От себя добавлю пару деталей и закину гроку чтобы написал промпт. Можете не запариваться с токенами, а писать запрос как думаете.
Запрос:
Нужен промпт для stable diffusion, который нарисует портрет молодой, красивой рыжеволосой девушки с зелеными глазами. Лицо должно быть милым с пухлыми губами, а волосы кудрявыми, также добавь веснушек
Ответ:
Portrait of a young, beautiful red-haired girl, vibrant green eyes, cute face with soft features, plump lips, curly voluminous hair cascading over her shoulders, freckles scattered across her cheeks and nose, realistic style, warm soft lighting, detailed background with a lush spring garden, subtle makeup enhancing her natural beauty
Закидываем промпт в txt2img. Негативный промпт можете поставить как у меня, универсальный, работает хорошо на всем.
(foots:1.5), unrealistic, saturated, high contrast, big nose, painting, drawing, sketch, cartoon, anime, manga, render, CG, 3d, watermark, signature, label, veins on hands
Настраиваем параметры изображения. Можете также повысить "Batch count" чтобы получать сразу несколько изображений, а не тыкать кучу раз кнопочку "Generate". Остальные настройки можете оставить как на скрине.
Жмем кнопочку "Generate" пока не получим подходящий результат. Я остановился на таком, seed: 3718814115
Всё, вы великолепны!
Важно отметить, что портреты, создаваемые базовыми моделями так или иначе похожи друг на друга. Попробуйте создать брюнетку с голубыми глазами и она вам всё равно будет напоминать чертами лица эту рыжую. Чтобы добавить больше индивидуальности, можете скрестить полученный портрет с любым портретом девушки найденным в интернете. Например, если скрестить полученное изображение выше с фоткой amouranth
то получится вот такой результат:
Процесс "скрещивания" похож на процесс из второго шага, но более подробное описание приводить не буду, т.к. материала хватит на полноценную статью.
Второй шаг. Создаем сюжет
При создании сюжета есть нюанс: лучше всего лицо будет сохраняться, если в основе каждого промпта использовать исходный. Что я имею ввиду - вот наш исходный промпт:
Portrait of a young, beautiful red-haired girl, vibrant green eyes, cute face with soft features, plump lips, curly voluminous hair cascading over her shoulders, freckles scattered across her cheeks and nose, realistic style, warm soft lighting, detailed background with a lush spring garden, subtle makeup enhancing her natural beauty
Оставим от него скелет, убрав детали, которые не очень относятся к лицу (например волосы можно всегда выбрать самим):
А young, beautiful red-haired girl, vibrant green eyes, cute face with soft features, plump lips, freckles scattered across her cheeks and nose
Теперь создадим сюжет. Пусть наша нейродевочка сидит под яблоней в саду. Можем так и написать используя переводчик, а можем также попросить грока. Вот промпт который он предлагает:
A young, beautiful red-haired girl with green eyes and freckles, sitting under a blossoming apple tree, curly hair flowing in the breeze, wearing a light sundress, surrounded by soft grass and fallen petals, sunlight filtering through the branches, peaceful and serene atmosphere, realistic style, vibrant colors
Возьмем из него описание сцены и совместим с нашим исходным промптом, получится что-то такое:
А young, beautiful red-haired girl, vibrant green eyes, cute face with soft features, plump lips, freckles scattered across her cheeks and nose, sitting under a blossoming apple tree, curly hair flowing in the breeze, wearing a light sundress, surrounded by soft grass and fallen petals, sunlight filtering through the branches, peaceful and serene atmosphere, realistic style, vibrant colors
Если просто использовать этот промпт с сидом 123456789, то получится такое изображение
Теперь давайте подкинем лицо. Для этого:
Скачайте модель ControlNet. Прямая ссылка на скачивание или ссылка на хаггифейс, там вам нужен файл ip-adapter-faceid_sdxl.bin
Поместите модель в модели контролнета по пути models/ControlNet/
В Forge перейдите во вкладку ControlNet Unit 0 и настройте как на скрине: галочку enable, "радио-кнопка" IP-Adapter, Preprocessor InsightFace+CLIP-H, model ip-adapter-faceid_sdxl. Ну и изображение портрета не забудьте).
Жмем "Generate" на сиде 123456789
Проверим метод еще на нескольких генерациях. Возьмем текущий промпт и еще какой-нибудь дополнительный, например:
А young, beautiful red-haired girl, vibrant green eyes, cute face with soft features, plump lips, freckles scattered across her cheeks and nose, sitting on an old wooden chair in an abandoned building, curly hair slightly tousled, wearing a worn sundress, surrounded by cracked walls and broken windows, faint sunlight streaming through dusty air, eerie yet melancholic atmosphere, realistic style, muted tones with pops of red
В результате мы видим похожие между собой лица, но отличающиеся от исходного портрета - как минимум лицо более круглое.
В конце хочется добавить, что вам не обязательно останавливаться на каком-то одном портрете, можете смешивать используя ip-adapter множество изображений и через несколько итераций получить уникальное лицо.
P.S. Добро пожаловать в комментарии и подписывайтесь на Машу на пикабу и в телеге









Искусственный интеллект
5.9K постов12K подписчиков
Правила сообщества
ВНИМАНИЕ! В сообществе запрещена публикация генеративного контента без детального описания промтов и процесса получения публикуемого результата.
Разрешено:
- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.
- Делиться статьями, понятными большинству аудитории Пикабу.
- Делиться опытом создания моделей машинного обучения.
- Рассказывать, как работает та или иная фиговина в анализе данных.
- Век жить, век учиться.
Запрещено:
I) Невостребованный контент
I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.
I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.
I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.
II) Нетематический контент
II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.
II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".
II.3) Создавать контент, входящий в противоречие с правилами Пикабу.
III) Непотребный контент
III.1) Эротика, порнография (даже с NSFW).
III.2) Жесть.
За нарушение I - предупреждение
За нарушение II - предупреждение и перемещение поста в общую ленту
За нарушение III - бан