Skin - генерация реалистичной кожи
Перед началом рассмотрения материала следует уяснить что реалистичность и кожа - это разные вещи. Обычно под первым понятием понимают изображение фотографического качества, а под вторым - наличие реалистичных дефектов кожи характерных для живого человека. Объединяя эти два понятия в "реалистичную кожу" мы подразумеваем изображение фотографического качества с явными характеристиками определяющими реалистичную кожу натянутую на кожаный мешок с костями.
Краткий рецепт - основа
- Берём модель которая может генерировать реалистичные портреты, и естественно которая тренировалась на подходящих по разрешению и качеству исходников. Параметры кожи зашиты в модели и никак не иначе. Лучшим вариантом генерации кожи это использование модели FLUX - всё, дальше можете не читать. Однако, если хотите более подробно разобрать тему и алгоритм получения реалистичной кожи на предыдущих моделях, то читайте дальше.
- Многое зависит от объекта съёмки и всей композиции. Объект с кожей должен по факту ей обладать или быть ею покрытым, например это может быть куртка или лицо человека. При этом окружение, освещение и тени должны подчёркивать необходимые элементы поверхности. Как сделать реалистичное изображение описано тут.
- Реалистичность кожи проявляется на приближении объекта ею обладающей. На удалённых объектах или низком разрешении кожа просто не видна.
- "Правильные настройки" подбираются для конкретной модели, если для FLUX моделей достаточно описать лицо и выставить стандартные настройки, то для SD1.5 и XL моделей всё гораздо сложнее. Для каждой модели эти настройки подбираются индивидуально, начать можно с рекомендуемых из описания к модели.
- Токены в подсказке (для XL и SD1.5): минимально достаточным является сочетание: macro_shot, art by Alex Webb, Canon 5d mark 4 - в данном случае мы говорим о том что это будет высококачественная профессиональная фотография в которой повышенное внимание следует уделить деталям. Заметьте - здесь нет ничего про кожу, речь идёт о качественной фотографии приближённого объекта. FLUX - не понимает большинство стилей камер или Artist, нужно просто описать объект/лицо.
- Решающим может стать разрешение картины, т.к. детали кожи довольно мелкие. Поэтому рекомендуется использовать Upscaler , например в Hires prompt, можно постепенно добавлять токены кожи, но не все сразу, например: visible skin pores and subsurface scattering, soft directional lighting, subtle mole on cheekbone, under Rembrandt lighting, correct eyes proportions, anatomical accuracy, olive undertones, rosy cheeks.
- Следует не забывать про негатив, убирая эффекты мультика, 3D и кукольности - мы добавляем реализма, в том числе и для кожи. Поэтому в тот же самый хайрез, только в негатив, можно добавить: (doll:1.2), (airbrushing, cartoon, anime, semi-realistic, cgi, rendering, blender, digital art, manga, amateur:1.3), (3D, 3D game, 3D game scene, 3D character:1.1), draft, (drawn:1.4), sketch
Настройки Hires. fix
- Upscaler: 4x_NMKD-Siax_200k
- Denoising strength: 0,35
- Upscale by: 1,5-2
XL
Пример на модели juggernautXL_v9Rundiffusionphoto2 на разрешении 1024*1024 в сравнении до и после Hires (с увеличением в 2 раза). Итоговый prompt на примере лица прекрасной девушки (face of a beautiful girl) будет выглядеть примерно так:
Prompt
macro_shot, face of a beautiful girl,
art by Thomas Saliot, art by Alex Webb,
Canon 5d mark 4, High Shutter Speed, Canon RF, F/8,
Steps: 30, Sampler: DPM++ 3M SDE, Schedule type: Exponential, CFG scale: 7, Seed: 4, Size: 1024x1024, Model hash: c9e3e68f89, Model: juggernautXL_v9Rundiffusionphoto2, Denoising strength: 0.35, Hires prompt: "visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone, under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline, correct eyes proportions, visible veins and wrinkles, anatomical accuracy, olive undertones, sweat droplets enhancing skin texture, rosy cheeks", Hires negative prompt: "(doll:1.2), (airbrushing, cartoon, anime, semi-realistic, cgi, rendering, blender, digital art, manga, amateur:1.3), (3D, 3D game, 3D game scene, 3D character:1.1), draft, (drawn:1.4), sketch", Hires upscale: 2, Hires upscaler: 4x_NMKD-Siax_200k, Version: v1.10.1
Тест семплеров и объекта съёмки
В качестве теста не будем брать кардинально отличающиеся объекты, достаточно взять абстрактную категорию (face of a beautiful girl) и конкретного персонажа в лице определённого актёра помещённого в конкретные условия (Terminator Arnold Schwarzenegger in sunglasses approaches the punks at night in the parking lot). Картинки по щелчку откроются на новой вкладке! В целом видно изменение расстояние до объекта в зависимости от подсказки при изменении семплера, отсюда и рекомендации могут быть разными в каждом конкретном случае. Следует учесть что это тест лишь одной из моделей XL, такой тест нужно делать на своей любимой - результат может отличаться.
Дополнительный тест объекта съёмки будет заключаться в натягивании кожи на объект. Лучше конечно взять персонажа обладающего явной кожей, нежели анимационного персонажа, хотя в конце концов можно и его очеловечить. В примере ниже {minion PROMPT} меняем таким образом, что бы очеловечить миньончика.
macro_shot, {minion PROMPT} in the dark room at night,
art by Thomas Saliot, art by Alex Webb,
Canon 5d mark 4, High Shutter Speed, Canon RF, F/8,
visible skin pores and subsurface scattering, soft directional lighting, subtle mole on cheekbone, under Rembrandt lighting, correct eyes proportions, anatomical accuracy, olive undertones, rosy cheeks
Negative prompt: (doll:1.2), (airbrushing, cartoon, anime, semi-realistic, cgi, rendering, blender, digital art, manga, amateur:1.3), (3D, 3D game, 3D game scene, 3D character:1.1), draft, (drawn:1.4), sketch
Steps: 30, Sampler: Restart, Schedule type: Karras, CFG scale: 7, Seed: 7, Size: 1024x1024, Model hash: c9e3e68f89, Model: juggernautXL_v9Rundiffusionphoto2, Version: v1.10.1
1. Базовые токены для текстуры кожи
Рассмотрим подробнее некоторые аспекты из основ перечисленных в кратком рецепте. Естественно, на кожу будут влиять токены такие как: детализация пор, неровностей и оттенков. Например:
skin pores — добавляет микрорельеф с видимыми порами.
subsurface scattering — имитирует рассеивание света в верхних слоях кожи.
freckles, moles — создают естественные пигментные пятна.
* Внимание: Важно не переборщить токенами характеризующими дефекты кожи - рискуем получить уродинку, особенно на коротких подсказках. Такие вещи следует добавлять с особой аккуратностью, разбавляя их вес подробным описанием композиции.
Пример подсказки:
"portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone"
FLUX
Пример на модели project0_v30ArtFP8 на разрешении 1024*1024
Запрос
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
SD 1.5
Пример на модели juggernaut_reborn на разрешении 768*768
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
XL
Пример на модели juggernautXL_v9Rundiffusionphoto2 на разрешении 1024*1024
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 1024x1024, Model hash: c9e3e68f89, Model: juggernautXL_v9Rundiffusionphoto2, Version: v1.10.1
2. Токены для контроля освещения
Освещение и тени определяют восприятие объема и текстуры, например:
Rembrandt lighting — акцентирует натуральные тени на лице.
rim light — подчеркивает контуры кожи.
diffused backlight — смягчает резкие переходы.
* Внимание: при расширении подсказки возможно будет отдаление от предыдущего варианта, т.к. вес токенов меняется и неизменно меняется композиция охватывающая больше параметров..
Пример дополнения в подсказку:
"under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline"
FLUX
Пример на модели project0_v30ArtFP8 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Запрос
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
SD 1.5
Пример на модели juggernaut_reborn на разрешении 768*768. в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
XL
Пример на модели juggernautXL_v9Rundiffusionphoto2 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
3. Токены анатомической точности
Исправляют неестественные искажения или наоборот придаёт больше естественности в идеализированные лица:
correct eyes proportions — корректирует форму глаз.
anatomical nose bridge — избегает "кукольных" носов.
realistic ear structure — прорабатывает завитки ушной раковины.
Пример подсказки:
"correct eyes proportions, visible veins and wrinkles, anatomical accuracy"
FLUX
Пример на модели project0_v30ArtFP8 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Запрос
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
correct eyes proportions, visible veins and wrinkles, anatomical accuracy
SD 1.5
Пример на модели juggernaut_reborn на разрешении 768*768. в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
correct eyes proportions, visible veins and wrinkles, anatomical accuracy
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
XL
Пример на модели juggernautXL_v9Rundiffusionphoto2 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
4. Токены для цветовых нюансов
Реалистичные оттенки кожи зависят от комбинации:
olive undertones / cool undertones — задают теплый или холодный подтон.
rosy cheeks — имитирует естественный румянец.
vascular visibility — добавляет голубоватые вены на тонкой коже.
* Внимание: как говорилось ранее - важно не переборщить токенами связанными с кожей, это же касается и оттенков кожи.
Пример подсказки:
"olive undertones, sweat droplets enhancing skin texture, rosy cheeks"
FLUX
Пример на модели project0_v30ArtFP8 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Запрос
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline
correct eyes proportions, visible veins and wrinkles, anatomical accuracy
olive undertones, sweat droplets enhancing skin texture, rosy cheeks
SD 1.5
Пример на модели juggernaut_reborn на разрешении 768*768. в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline,
correct eyes proportions, visible veins and wrinkles, anatomical accuracy,
olive undertones, sweat droplets enhancing skin texture, rosy cheeks
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 768x768, Model hash: 338b85bc4f, Model: juggernaut_reborn, Version: v1.10.1
XL
Пример на модели juggernautXL_v9Rundiffusionphoto2 на разрешении 1024*1024, в сравнении с предыдущим вариантом на такой же модели.
Prompt
portrait of a woman with visible skin pores and subsurface scattering, freckles across nose bridge, soft directional lighting, subtle mole on cheekbone,
under Rembrandt lighting, rim light highlighting wrinkles, diffused backlight softening jawline,
correct eyes proportions, visible veins and wrinkles, anatomical accuracy,
olive undertones, sweat droplets enhancing skin texture, rosy cheeks
Steps: 20, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 7, Seed: 1, Size: 1024x1024, Model hash: c9e3e68f89, Model: juggernautXL_v9Rundiffusionphoto2, Version: v1.10.1
Неочевидные приемы для XL и SD1.5
macro_shot - даёт указания сконцентрировать внимание на деталях, при условии что нужен крупный снимок. При этом сами детали описывать не обязательно - они будут браться исходя из композиции, что даёт большую свободу для модели.
- art by Alex Webb - указание стиля изображения выполненного профессиональным фотографом даёт не только более интересную композицию, но так же отвечает за реализм и как следствие качество снимка. В дополнение к Фотографу можно указать художника специализирующегося на портретах, таким образом можно получить более естественные и интересные фотографии, например можно добавить art by Thomas Saliot.
- Canon 5d mark 4 - указание камеры часто влияет на качество исходного материала и как следствие конечную генерацию. Т.е. мы как бы отсеиваем параметры более низкого качества и как следствие берём только лучшие данные из информационного облака нейросети. Токен камеры можно дополнить параметрами съёмки, например: High Shutter Speed, Canon RF, F/8.
- doll - в негативе убирает кукольность, наряду с другими токенами типа: (airbrushing, cartoon, anime, semi-realistic, cgi, rendering, blender, digital art, manga, amateur:1.3), (3D, 3D game, 3D game scene, 3D character:1.1), draft, (drawn:1.4), sketch - убирает указанные эффекты и как следствие оставляет реализм, что положительно сказывается на таком элементе как кожа.
Вывод
Если есть возможность - генерируйте на FLUX моделях из числа акцентированных на реализм и фото качество, особенно актуально на отдалённых объектах. Если возможностей оборудования хватает только на XL или SD1.5 используйте Upscale на настройках подбираемых под конкретно вашу модель генерации, которая должна обязательно уметь генерировать изображения фотографического качества. Чем старее модель, тем больше внимания нужно уделять токенам, особенно неочевидным. И на последок пару генераций в стандартном разрешении 1024 * 1024 на максимальной дистанции где может быть более или менее очевидно выражена кожа в зависимости от модели. Ниже стоит обратить внимание больше на дистанцию, а не на анатомию складок и пупырышек.
Бонус
Есть лайфхак, как можно улучшить качество кожи и не потерять в скорости. Это использовать SPO Lora. Но не забывайте понизить CFG до 3 и прописываем негатив.
В примере сравнение без негатива и с ним.
Prompt
macro_shot,
Terminator Arnold Schwarzenegger in sunglasses approaches the punks at night in the parking lot,
High Shutter Speed, Canon RF, F/8, by Thomas Saliot,
art by Alex Webb, Canon 5d mark 4,
<lora:spo_sdxl_10ep_4k-data_lora_webui:1>
Negative prompt: (worst quality:2), (low quality:2), (normal quality:2), dot, mole, lowres, cropped, jpeg artifacts, ugly, duplicate, morbid, mutilated, out of frame, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, mutation, deformed, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, gross proportions, malformed limbs, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck
Steps: 30, Sampler: DPM++ 2M, Schedule type: Karras, CFG scale: 3, Seed: 4, Size: 1024x1024, Model hash: c9e3e68f89, Model: juggernautXL_v9Rundiffusionphoto2, Lora hashes: "spo_sdxl_10ep_4k-data_lora_webui: 5256ee0c312f", Version: v1.10.1