Цвет в генерации — самый капризный параметр. Один и тот же запрос «blue background» даст в Midjourney насыщенный кобальт, в DALL-E — бледно-голубой, в Stable Diffusion — грязно-фиолетовый. Причина не в «непонимании» модели, а в том, как каждая архитектура кодирует цветовое пространство.
Этот материал даёт работающую систему: как описать гамму так, чтобы результат совпадал с ожиданием в 80–90 % случаев. Без подбора сидов, без десятков рероллов, без пост-обработки в фотошопе.
Суть в трёх действиях: зафиксировать цветовую модель (HEX / Lab / ключевые слова), задать роль каждому цвету (доминирующий / акцент / фон), добавить контекст освещения и материала.
Почему цвет — отдельная задача, а не просто слово в промте
Латентное пространство не знает HEX
Модели обучались на парах «текст–изображение», а не на цветовых координатах. «#2D5A8A» для них — просто токен, который встречался в подписях к фото с определённым освещением. Тот же HEX в другом контексте даст другой оттенок.
Токенизация режет градиенты
CLIP-кодировщики (в Midjourney и SD) разбивают описание на токены. «Muted teal» — один токен, «muted teal background» — уже три. Границы токенов не совпадают с границами цветовых переходов, поэтому плавные градиенты часто ломаются на полосы.
У каждой модели своя «палитра по умолчанию»
Midjourney v6 тяготеет к киноподобным, немного приглушённым тонам. DALL-E 3 выдаёт чистые, «векторные» цвета с высокой насыщенностью. SDXL без дообучения склонен к земным, «пыльным» оттенкам. Зная смещение, его можно компенсировать словами.
Что работает в каждой модели: шпаргалка параметров
Готовый шаблон: копируйте, подставляйте, генерируйте
Шаблоны под тип задачи: берите и меняйте только HEX
Цветовая теория в языке промтов: как описывать гармонии
Нейросети «знают» классические схемы: complementary, analogous, triadic, split-complementary, tetradic. Но одно слово «complementary» даёт случайную пару. Чтобы получить управляемую гармонию, описывайте её через отношения и опорные точки.
Монохром + акцент (самый надёжный)
Промт: «Monochromatic palette based on #D80621: tints (add white), shades (add black), tones (add gray). Single accent: complementary #28D8B2 at 5%».
Аналоговая тройка (спокойная, сплошная)
Промт: «Analogous harmony: dominant #D80621 (crimson), neighbors #E53348 (red) and #B50518 (deep red). 60/30/10 distribution. No complementary colors».
Split-complementary (контраст без напряжения)
Промт: «Split-complementary: base #D80621, accents #28D8A0 (teal) and #28D85E (green). Base 50%, each accent 20%, neutral 10%».
Пропорция 60-30-10 в промте
Всегда указывайте проценты явно. Без них модель распределит площадь по своей внутренней статистике — часто 80/15/5 или 40/40/20, что ломает иерархию.
Почему гамма едет: типичные сбои и как их лечить
Продвинутые приёмы: от «почти» к «точно»
Image Prompt / IP-Adapter — референс палитры
Самый надёжный способ: сгенерируйте или нарисуйте 200×200 px карточку с вашей палитрой (большие цветные квадраты + HEX-подписи). Подайте её в ControlNet Tile (SD) или как Image Prompt (MJ —cref / DALL-E через загрузку). Модель «считывает» цвета из пикселей, не интерпретируя слова.
Lab / LCH вместо HEX — перцептуальная точность
HEX — это sRGB координаты, они нелинейны. L (lightness), C (chroma), H (hue) описывают цвет так, как его видит глаз. «L=45 C=65 H=25» даст одинаковую воспринимаемую яркость и насыщенность в любом цветовом пространстве.
В промте: «CIELAB L45 C65 H25 (perceptual crimson), matched to sRGB #D80621». Работает в DALL-E 3 и SDXL (через кастомный текстовый энкодер или вручную в ComfyUI).
Style Reference (—sref) для сериальности
Midjourney v6: сгенерируйте один идеальный кадр с правильной гаммой. Скопируйте его Job ID. В следующих промтах добавьте «—sref [JOB_ID] —sw 50–100». Это переносит не только стиль, но и цветовую статистику латентного кода. Для DALL-E — загружайте тот же референс-кадр как входное изображение (edit mode).
Color Checker в кадре — контроль качества
Для фотореализма: добавьте в промт «X-Rite ColorChecker Passport visible in frame, neutral gray patch #808080». После генерации проверьте пипеткой нейтральный патч — если он не #808080, корректируйте WB в пост или реролльте с «white balance: neutral 5500K, no color cast».
Шпаргалка: ключевые слова для цвета, которые понимают модели
Насыщенность / Хрома
Светлота / Значение
Температура / Тон
Материал / Поверхность