AI-фотосессия · 11 октября 2026 · 8 мин чтения

ControlNet: как нейросеть держит позу, контур и глубину кадра

ControlNet простыми словами: как он добавляет к Stable Diffusion и Flux скелет позы OpenPose, карту глубины и контуры, где его ставят в ComfyUI и Forge и почему позой не удержать лицо.

Кратко. ControlNet это надстройка над диффузионной моделью, которая заставляет её рисовать по карте из образца: скелету позы (OpenPose), карте глубины (Depth), контурам (Canny) или наброску. Поза и композиция сохраняются, а лицо, одежда и фон меняются по тексту. Ставят его в ComfyUI, Forge и других интерфейсах к Stable Diffusion и Flux. Лицо конкретного человека он не удерживает.

ControlNet: что это простыми словами

Представь, что ты объясняешь художнику по телефону, как стоит человек на картинке. «Левая рука в кармане, правая держит кофе, корпус чуть развёрнут, взгляд через плечо». Он нарисует что-то похожее, но не то. А теперь ты присылаешь ему фото, где эта поза уже есть, и он рисует поверх неё. ControlNet это второй способ.

Обычная генерация по тексту управляется словами, а слова плохо передают геометрию. Можно написать «человек сидит на ступеньках, опершись локтем о колено», и модель выдаст десять разных вариантов, из которых нужный будет один или ни одного. ControlNet добавляет к тексту картинку-подсказку, и модель укладывает новый кадр в её структуру.

Придумали приём исследователи из Стэнфорда: работа Adding Conditional Control to Text-to-Image Diffusion Models вышла в феврале 2023 года, код лежит в репозитории ControlNet. Что такое сама Stable Diffusion, для которой его сделали первым делом, разобрано в статье про Stable Diffusion.

Stable Diffusion ControlNet: как это работает внутри

Главная хитрость в том, что основную модель никто не трогает. Её слои копируются: одна копия остаётся замороженной и продолжает рисовать как умела, вторая учится понимать новую подсказку, например скелет позы. Сигнал от второй копии подмешивается к первой.

Связывают их слои, которые в начале обучения выдают ноль. Пока ControlNet ничему не научился, он просто не влияет на картинку, и базовая модель не портится. По мере обучения его голос в общей генерации становится громче. Благодаря этому ControlNet можно обучить на сравнительно небольшом наборе примеров и не сломать то, что модель умела до этого.

Для тебя из этой механики важно одно. ControlNet это отдельный файл, который подходит к определённому семейству базовых моделей. ControlNet под одну версию Stable Diffusion с другой версией или с Flux не заработает, их нужно подбирать в паре.

Виды ControlNet: OpenPose, Depth, Canny и другие

Каждый ControlNet обучен на свой тип карты. Карту обычно получают из обычного фото отдельной программой, её называют препроцессором.

ТипЧто берёт из образцаГде полезен
OpenPoseскелет человека: голова, плечи, руки, ногиповторить позу с другим человеком и фоном
Depthкарту глубины: что ближе, что дальшесохранить объём и расстановку предметов
Cannyтонкие контуры всех краёвдержать форму предметов и силуэта почти точно
Scribbleнабросок от рукинарисовать композицию палочками и получить картинку
Segmentationкарту областей: небо, стена, человекзадать, где что находится в кадре
Normal mapнаправление поверхностейдержать рельеф и форму под светом

В исходной работе авторы показывали ещё карты прямых линий для интерьеров и мягкие контуры. На практике чаще всего пользуются первыми тремя из таблицы.

У любого ControlNet есть две настройки, которые решают больше, чем выбор типа. Первая это сила: насколько жёстко модель держится за карту. На полной силе она копирует структуру почти буквально, на половинной скорее вдохновляется. Вторая это отрезок генерации, на котором ControlNet включён. Если оставить его только на первых шагах, модель заложит позу и композицию, а мелкие детали дорисует свободно. Допустим, кадр выходит деревянным, будто человек вырезан из картона: чаще всего помогает снизить силу или выключить ControlNet на последней трети шагов.

Типы можно совмещать. Скажем, OpenPose держит позу человека, а Depth держит комнату за ним. Каждому задают силу влияния, и если перекрутить, картинка начинает выглядеть как раскраска по трафарету.

ControlNet OpenPose: одна поза, разные люди

OpenPose превращает фото человека в набор точек и палочек: голова, шея, плечи, локти, кисти, бёдра, колени, стопы. Расширенные варианты добавляют точки пальцев и лица. На выходе получается схематичный человечек, на котором не видно ни одежды, ни внешности.

Допустим, у тебя есть снимок, где ты сидишь на капоте машины, и поза удачная, а всё остальное нет. Через OpenPose поза уходит в скелет, и дальше по тексту можно получить «мужчина в льняном костюме сидит на каменном парапете у моря». Руки, наклон головы, положение ног сохранятся. Лицо, одежда, фон и даже телосложение будут новыми.

Слабые места у позы свои. Руки, скрещённые на груди, и пальцы часто определяются с ошибками, и модель рисует лишний сустав. Если человек на образце стоит боком и половину тела не видно, скелет выходит неполным, и модель додумывает пропавшую руку как получится.

ControlNet Depth: глубина вместо деталей

Карта глубины это чёрно-белая картинка, где светлое ближе к камере, а тёмное дальше. Цвета, текстур и лиц на ней нет, только объём.

Depth полезен, когда важно сохранить пространство. Скажем, у тебя есть фото в тесной прихожей, и нужно тот же кадр с тем же расположением, но в лофте с кирпичной стеной. Depth удержит, где стоит человек, как далеко стена и под каким углом снята сцена. Модель заполнит этот объём новыми материалами.

По сравнению с OpenPose глубина строже: она держит и силуэт человека, и предметы вокруг. Поэтому она хуже подходит, когда хочется сменить телосложение или одежду с объёмной на облегающую. Модель будет упорно вписывать новый образ в старый контур.

Где ставится ControlNet: ComfyUI, Forge и Flux

ControlNet работает внутри интерфейсов для локальных моделей, которые запускаются на своей видеокарте.

  • ComfyUI. В связке ComfyUI и ControlNet управление подключается узлами в схеме: загрузка модели ControlNet, препроцессор, применение к генерации. Гибко и наглядно, но требует понимать, что с чем соединяется. Сам интерфейс разобран в статье про ComfyUI.
  • Forge и другие веб-интерфейсы в духе Automatic1111. Там ControlNet выглядит как отдельная вкладка под основными настройками: загружаешь образец, выбираешь тип и препроцессор, ставишь силу.
  • Flux. Для него управление по структуре устроено похоже. Black Forest Labs выпускала FLUX.1 Tools, куда входили модели Canny и Depth. Их открытые веса остаются на Hugging Face, хотя в API компании они больше не поддерживаются. Есть и сторонние Flux ControlNet от независимых команд, их качество сильно разнится.

Установка во всех случаях сводится к одному: скачать файл ControlNet под свою базовую модель и положить в нужную папку интерфейса. Бери файлы из официальных страниц авторов на Hugging Face и GitHub, а не из сборок «всё в одном» с незнакомых сайтов: внутри таких архивов бывает что угодно.

Почему позой не удержать лицо

Это самое частое разочарование. Человек берёт своё фото, пропускает через OpenPose или Depth и ждёт, что на выходе будет он сам в новой сцене. Выходит кто-то другой в его позе.

Причина в том, что ControlNet передаёт геометрию, а не личность. Скелет из двадцати точек одинаков у тебя и у соседа по подъезду. Карта глубины хранит форму головы грубо, без разреза глаз, линии бровей и формы носа. Модель смотрит на эту схему и рисует лицо, которое подходит под текст, из своей памяти о тысячах людей.

Canny с плотными контурами держит черты чуть лучше, потому что передаёт края глаз и губ. Но это копия линий, а не лица: сменишь свет или ракурс, и сходство рассыпается. К тому же чем сильнее контур, тем меньше свободы у модели, и кадр выходит похожим на обведённое фото.

Для сходства используют другие инструменты: образцы лица, которые модель видит при каждом кадре, или обучение личной модели на десятке-другом снимков. Разница между подходами разобрана в статье face swap против обучения. ControlNet в такой связке остаётся помощником по позе.

Когда ControlNet нужен, а когда нет

Нужен, если важна композиция. Повторить позу из референса, сохранить планировку комнаты, сделать серию кадров с одинаковой расстановкой, превратить набросок в картинку. Для иллюстраторов, дизайнеров и тех, кто делает раскадровки, это рабочий инструмент. Представь раскадровку ролика на двенадцать кадров, где герой должен стоять в одной и той же точке у окна: без карты позы и глубины каждый кадр уезжал бы в свою сторону.

Не нужен, если ты хочешь просто хороший портрет себя. ControlNet требует локальной установки, подбора моделей и времени на настройку, а главную задачу, сходство, он не решает.

Если нужны готовые портреты с твоим лицом без установки и настройки, у нас каталог на больше 600 сцен по трём селфи, пакеты от 490 ₽.

Частые вопросы

Что такое ControlNet?

Это дополнительная нейросеть, которая подключается к диффузионной модели и заставляет её соблюдать структуру из образца. Образцом служит карта: скелет позы, карта глубины, контуры, набросок от руки. Модель рисует новый кадр по тексту, но укладывает его в эту карту.

Чем отличаются ControlNet OpenPose и ControlNet Depth?

OpenPose передаёт только скелет человека: где голова, плечи, локти, колени, иногда пальцы и черты лица точками. Depth передаёт карту глубины всей сцены, то есть что ближе к камере, а что дальше. Первый держит позу и оставляет свободу фону, второй держит объём и расположение предметов.

Можно ли через ControlNet сохранить своё лицо?

Нет. ControlNet держит геометрию кадра, а не личность. Скелет позы одинаковый у тысяч людей, и модель нарисует на нём любое лицо, подходящее под текст. Для сходства нужны другие приёмы: образцы лица при генерации или обучение личной модели на твоих фото.

Есть ли ControlNet для Flux?

Для Flux есть модели с той же идеей управления по структуре. Black Forest Labs выпускала FLUX.1 Canny и FLUX.1 Depth для управления по контурам и глубине, их открытые веса лежат на Hugging Face, а в своём API компания их больше не поддерживает. Есть и модели ControlNet для Flux от сторонних команд.

Обновлено: 11 октября 2026

Готов попробовать?

Выбери сцены из каталога — более 600 вариантов. Первые кадры через пару минут после оплаты, от 490 ₽.

Выбрать сцены →

Читать дальше