Вы генерируете персонажа для комикса, фреймы для рекламы или шоты для брендбука. Промт идентичный, сид разный. Результат: кожа то розовая, то сероватая, то оранжевая. Небо то cyan, то насыщенный blue. Тени то холодные, то тёплые. Модель «гадает», потому что в латентном пространстве цвет — это распределение вероятностей, а не жесткое правило.
Привычные решения — сиды, —cref, —sref, ControlNet — решают геометрию и композицию. Но цветовая гамма скользит. Промт в гамму (Gamma Prompt) — это явное программирование цветопередачи через термины, понятные диафрагме и цветокорректору: кривые, LUT-описания, координаты в цветовых пространствах, запрет на нежелательные оттенки.
Материал ниже — пошаговая инструкция, как собрать такой промт, чтобы цвет стал стабильным активом проекта, а не случайностью.
Что такое «промт в гамму» на уровне модели
Диффузионные модели (SD, MJ, Flux) оперируют в латентном пространстве, где RGB-каналы смешаны с семантикой. Слово «киношный» тянет за собой teal & orange, lifted blacks, низкую насыщенность в светах. Слово «неон» — чистые спектральные оттенки, clipping в светах, резкие переходы.
Промт в гамму — это блок инструкций, который:
- Фиксирует точку белого и чёрного (white point / black point) — устраняет «серую» пелену или забитые тени.
- Задаёт кривую тонов (Tone Curve) — contrast, S-curve, filmic rolloff, log-profile.
- Ограничивает гамут (Gamut) — разрешенные оттенки кожи, неба, листвы, акцентов.
- Назначает цветовую температуру ключевого света и заполнения — кельвины, цветовые фильтры (CTB, CTO, plus/minus green).
- Вводит негативную гамму — что категорически исключено (magenta cast, green shadows, oversaturation).
Четыре столпа гамма-промта
1. Референсная точка (Anchor)
Жёсткая привязка к измеримой величине. Не «тёплые тона», а «key light 4200K, fill 5600K, skin tone reference: Pantone 489 C / L*a*b* 65, 18, 22». Для MJ — параметр --cref с изображением этилона цвета. Для SD — IP-Adapter Color Only / Reference Only в ControlNet.
2. Кривая тона (Tone Curve)
Явное описание контраста. «S-curve filmic: lift shadows +0.15, gamma 1.05, gain highlights -0.1, shoulder roll-off». «Log-C Arri style: preserve 14 stops DR, mid-gray at 0.38». «High key: crush blacks to 0, clip whites at 245, midtones +0.3». Модель переводит это в распределение шума на этапе денойзинга.
3. Разрешённый гамут (Gamut Map)
Список допустимых hue-диапазонов для ключевых объектов. «Skin hue range: 25±5° (HSV), saturation 35-55%. Foliage hue: 110±15°, sat 40-60%. Sky hue: 200±10°, sat 30-50%». Блокирует «галлюцинации» фиолетовой кожи или красного неба. В SD — через Regional Prompter / Attention Coupling. В MJ — текстово.
4. Негативная гамма (Negative Gamut)
Что запрещено. «No magenta cast in shadows, no green-magenta shift in midtones, no orange oversaturation > 85%, no cyan contamination in highlights, no crushed blacks < 5 IRE». Работает как hard constraint в attention. Критично для кожи и нейтралов.
Сборка промта: 5 шагов от хаоса к стандарту
Соберите этитон
Сделайте 3-5 референсных генераций с идеальным цветом (подберите сид, inpainting, ручную коррекцию). Это ваш «эталон». Сохраните их как референс-сет.
Измерьте числа
Откройте эталоны в пипетке (Photoshop, DaVinci, онлайн-инструмент). Запишите: L*a*b* кожи, RGB светий/теней, Hue/Sat ключевых объектов, среднюю яркость (EV), контраст (RMS).
Сформулируйте блок гаммы
Переведите числа в язык промта (см. шаблон ниже). Добавьте термины: «graded with Kodak 2383 LUT», «ACES 1.3 ODTT», «shadow tint: 10% blue», «highlight rolloff: soft knee».
Протестируйте на 20 сидах
Сгенерируйте серию с разными сидами, тем же промтом. Проверьте ΔE (Delta E) кожи и неба относительно эталона. Цель: ΔE < 2.5 (невидимо глазу), max ΔE < 5.
Закрепите как пресет проекта
Сохраните блок гаммы в библиотеку промтов проекта (Notion, Obsidian, txt-файл). Обязательно включайте в каждый новый промт серии. Версионируйте: v1.0, v1.1 (исправили зелёную тень).
Готовый шаблон: копируйте и адаптируйте
С гамма-промтом и без: разница в производстве
Важно: сид ≠ гамма
Фиксированный сид фиксирует композицию и шум, но не гарантирует цвет при изменении промта, разрешения, аспект-рейто или версии модели. Гамма-промт работает ортогонально: он задаёт цветовые инварианты, которые удерживаются при любых сидах и модератных изменениях промта.
Лучшая стратегия: Гамма-промт (постоянный) + Сид (для композиции) + ControlNet/IP-Adapter (для структуры). Это даёт полный контроль: геометрия от сида/контрольнет, цвет — от гамма-блока.