Faceswap
faceswap — перенос лица с одного снимка на другого человека
Faceswap — замена лица на фото или в видео на другое одной нейросетью, без обучения. Готовая модель (inswapper) берёт лицо с одного снимка и переносит на человека в кадре за секунды, подгоняя ракурс и освещение. В отличие от LoRA или DreamBooth, тренировать ничего не нужно — хватает одной фотографии- источника. Популярные инструменты: Roop и его наследник ReActor — нода для ComfyUI и расширение Automatic1111.
Коротко
Коротко. Faceswap меняет лицо в кадре на чужое за пару секунд, без всякой тренировки. Готовая модель
inswapperберёт лицо с фото-источника и вставляет его человеку в целевом кадре, подгоняя поворот головы и свет. Главные инструменты — Roop и пришедший ему на смену ReActor (нода ComfyUI / расширение Automatic1111). Не путать с улучшением лица: здесь лицо именно заменяется, а не делается чётче.
Что это такое
Нужно поставить лицо актёра на дублёра в одном кадре. Или своё — в шуточный постер. Ещё несколько лет назад это означало часы в After Effects: маски, трекинг, ручная подгонка света по краям. Сегодня — одна фотография, одна нода, три секунды.
Faceswap — это технология, которая переносит лицо с одного изображения на другое. Толчок дал проект Roop в 2023-м: он завернул модель inswapper от InsightFace в простой интерфейс, и внезапно замена лица стала доступна без навыков монтажа. Популярность была взрывной — и почти сразу проект свернули из-за этической стороны: тем же инструментом делали дипфейки и нежелательный контент. Эстафету принял ReActor — форк, который живёт как нода в ComfyUI и как расширение в Automatic1111.
Важно сразу провести границу. Faceswap — это не обучение модели на чьём-то лице (как LoRA или DreamBooth). Там нужны десятки фотографий и часы тренировки, зато потом лицо можно генерировать в любых сценах. Здесь — одна фотография и мгновенный результат, но только подмена в готовом кадре и с меньшим контролем над деталями.
Как это работает
Под капотом faceswap — это конвейер из нескольких моделей, а не одна «магическая кнопка».
- Детектор лиц (InsightFace, RetinaFace) находит лицо и на источнике, и в целевом кадре — с координатами и ключевыми точками.
- Энкодер личности достаёт из лица-источника эмбеддинг — компактный «отпечаток» того, как выглядит этот человек.
- inswapper перерисовывает целевое лицо так, чтобы оно «читалось» как человек с источника, но сохраняло поворот, мимику и освещение цели.
- Восстановление лица (опционально, но почти всегда нужно):
inswapperработает в разрешении 128×128, поэтому свежий результат мыльный. Сверху прогоняют GFPGAN или CodeFormer — и лицо становится чётким.
Пример на практике
Дизайнеру нужно подставить лицо ведущего на десяток рекламных макетов, снятых с моделью-дублёром.
В ComfyUI он собирает короткий workflow: Load Image с фотографией ведущего (источник) и Load Image с макетом (цель) идут в ноду ReActor, а её выход — в восстановление лица через CodeFormer. На RTX 3060 один кадр обрабатывается за 3–5 секунд. Десять макетов — меньше минуты.
Тонкость всплывает на больших экранах. Из-за разрешения 128×128 лицо после свопа мягкое, и на 4K-макете это заметно. Спасает CodeFormer с параметром fidelity около 0.5 — он добавляет резкости, не «перерисовывая» человека до неузнаваемости. Для видео тот же приём идёт покадрово, и здесь важна стабильность детектора: если на паре кадров лицо не найдётся, в ролике мелькнёт оригинал.
С чем часто путают
- Faceswap и Face Restoration — restoration улучшает и восстанавливает то же самое лицо (чёткость, артефакты); faceswap меняет его на другое. Их часто ставят в одну цепочку, но задачи противоположные.
- Faceswap и IP-Adapter FaceID / InstantID — faceswap подменяет лицо в уже готовом кадре; IP-Adapter и InstantID, наоборот, генерируют новое изображение с нужным лицом с нуля.
- Faceswap и LoRA на лицо — LoRA учится на многих фото и потом рисует человека в любых сценах; faceswap работает с одной фотографией, но только переставляет лицо и хуже держит характерные детали.
- Roop и ReActor — Roop это исходный проект (закрыт), ReActor — актуальный наследник, который и используют в 2026-м.
Частые ошибки и заблуждения
- «Faceswap сразу даёт идеальное качество». Нет. Базовый своп идёт в 128×128 и выглядит мыльным — без шага восстановления лица результат сырой.
- «Нужно много фотографий человека». Наоборот, faceswap силён тем, что ему хватает одной фотографии-источника.
- «ReActor нарисует нужное лицо в любой генерации». Нет. Он меняет лицо в готовом кадре. Чтобы сразу генерировать картинку с конкретным лицом, нужны IP-Adapter FaceID или InstantID.
- «Если лицо в видео иногда мерцает — это плохая модель». Чаще виноват детектор: на резком повороте головы лицо не находится, и кадр остаётся исходным. Лечится настройкой порога детекции и сглаживанием.
- «Faceswap разрешён, раз инструмент в открытом доступе». Доступность не равна законности. За дипфейки реальных людей без согласия предусмотрена ответственность.
Связанные термины
- Face Restoration — восстановление чёткости лица, обязательный шаг после свопа.
- IP-Adapter — генерация изображения с нужным лицом, альтернатива свопу.
- Inpainting — локальная перерисовка области, в том числе лица.
- ControlNet — контроль позы и композиции при работе с персонажами.
- LoRA — обучение на лице для гибкой генерации в любых сценах.
- ComfyUI — где живёт нода ReActor и собирается весь конвейер.
Частые вопросы
Чем Roop отличается от ReActor?
Roop — исходный проект 2023 года, его закрыли. ReActor — поддерживаемый форк с той же моделью inswapper, доступный как нода ComfyUI и расширение Automatic1111.
Нужна ли видеокарта? Желательна, но не обязательна. На видеокарте своп занимает секунды, на процессоре — заметно дольше, особенно с восстановлением лица.
Как сделать результат чётче? Прогнать после свопа CodeFormer или GFPGAN и при необходимости апскейл. Без этого шага лицо остаётся мыльным из-за разрешения 128×128.
Какая модель делает сам своп?
inswapper_128.onnx от InsightFace — она внутри и Roop, и ReActor. Детекция лиц — отдельной моделью (RetinaFace/InsightFace).
Можно ли менять лицо в видео? Да, покадрово. Главное — стабильная детекция: на кадрах, где лицо не найдено, останется оригинал, и появится мерцание.
Главное
Faceswap решает узкую задачу быстро: подменить лицо в готовом кадре, имея одну фотографию и пару секунд. Это не обучение модели и не генерация с нуля — поэтому он удобен, но ограничен: разрешение свопа низкое, и без восстановления лица результат сырой. И ровно потому, что технология настолько доступна, ответственность за неё лежит на том, кто нажимает кнопку: faceswap чужого лица без согласия — это уже не творчество, а дипфейк.