Face Restoration

face restoration — пост-обработка для восстановления лиц

Раздел
Инструменты
Обновлено
11.08.26

Face Restoration — отдельный пост-обработочный шаг, который улучшает лица на сгенерированной или старой фотографии. Решает классическую проблему AI-генерации: лица «уплывают», глаза асимметричны, кожа похожа на пластик. Одни методы восстанавливают лицо готовой моделью, другие заново рисуют найденную область через inpainting. Подход выбирают по исходнику: мягкое восстановление сохраняет личность, а сильная перерисовка лучше чинит форму, но легче меняет человека.

Коротко

Коротко. Face Restoration — обработка области лица после генерации или съёмки. Отдельная модель может восстановить детали, а автоматический inpainting — заново нарисовать найденную область. Оба подхода способны улучшить кадр, но при сильной правке меняют черты и не гарантируют сохранение личности.

Что это такое

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

Можно перегенерировать кадр, исправить область вручную или применить восстановление лица и сравнить результат с исходником.

  • GFPGAN (Tencent, 2021) — классический, быстрый, мягко улучшает. Встроен в Automatic1111.
  • CodeFormer (NTU Singapore, 2022) — отдельный метод восстановления с управлением компромиссом между сходством и перерисовкой.
  • ADetailer (расширение A1111) — автоматически детектирует лица и руки, делает inpainting каждой области.
  • Коммерческие редакторы — объединяют восстановление, шумоподавление и увеличение изображения в одном интерфейсе. Результат зависит от исходника и настроек, а не от статуса продукта. Результат зависит от метода: отдельный реставратор может привнести признаки своего обучающего набора, а inpainting сильнее опирается на текущую генеративную модель.

Как это работает

Классические инструменты (GFPGAN, CodeFormer):

  1. Детекция лица в готовой картинке (через RetinaFace или похожую).
  2. Выравнивание и вырезание области лица в размер, ожидаемый моделью.
  3. Прогон через GFPGAN / CodeFormerнейросеть «реставрирует» лицо.
  4. Вставка обратно в исходную картинку с blending по краям.

ADetailer работает по-другому:

  1. YOLO-детектор находит лица (и руки) на картинке.
  2. Создаёт маску автоматически.
  3. Запускает inpainting с тем же промптом, что и в txt2img.
  4. Результат — лицо в том же стиле, что и остальная картинка.

У CodeFormer есть параметр, управляющий компромиссом между восстановлением и сходством. Его смысл и направление изменения сверяют с реализацией интерфейса, а значение подбирают сравнением с исходным лицом.

Пример на практике

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

Решение — ADetailer:

  1. В Automatic1111 ставит расширение ADetailer.
  2. Включает «detect face» с моделью face_yolov8n.pt.
  3. Запускает обработку на небольшой контрольной серии.

После каждого кадра детектор находит лицо и запускает локальный inpainting. Команда измеряет долю исправленных кадров, ложные срабатывания и изменение сходства. Дополнительное время зависит от модели, размера маски, шагов и оборудования.

С чем часто путают

  • Face Restoration и Upscaler — Upscaler увеличивает всю картинку, FR работает только с лицами. Применяются часто вместе, FR обычно после.
  • Face Restoration и Inpainting — Inpainting требует ручной маски; FR находит лицо автоматически. ADetailer внутри использует inpainting, но автоматизирует мas`k.
  • Готовое восстановление и inpainting — первое старается сохранить найденные черты, второе свободнее перерисовывает область. Какой подход выглядит естественнее, проверяют на конкретном лице и увеличенном кадре.
  • Face Restoration и Face Swap — Face Swap (Roop, ReActor) заменяет лицо на чужое; FR улучшает имеющееся.

Частые ошибки и заблуждения

  • «Face restoration убирает все артефакты». Нет. Если геометрия лица разрушена, локальная модель может лишь убедительно перерисовать другого человека. Иногда надёжнее новая генерация или ручная правка.
  • «CodeFormer всегда лучше GFPGAN». Нет. Методы по-разному ведут себя на фотографии, стилизации и сильно повреждённом лице. Сравнивают не только резкость, но и сохранение черт.
  • «ADetailer работает только с лицами». Не только. Он детектирует и обрабатывает любые объекты, на которые есть YOLO-модель: руки, тело, глаза, губы.
  • «Face restoration исправит любую исходную генерацию». Нет. Если поза, свет или черты изначально построены неверно, мягкое восстановление не вернёт отсутствующую информацию, а сильное может создать другое лицо.
  • «Нужда в восстановлении определяется названием генератора». Нет. Она зависит от масштаба лица, исходного дефекта и требований к сходству.

Связанные термины

  • GFPGAN / CodeFormer — классические модели восстановления.
  • Автоматический inpainting — отдельный подход, где детектор находит лицо, а генеративная модель перерисовывает выбранную область.
  • Upscaler — часто используется вместе с FR для финальной полировки.
  • Inpainting — что ADetailer делает автоматически.
  • IP-Adapter FaceID — альтернативный способ фиксации лица (на этапе генерации).
  • YOLO — детектор объектов, используемый ADetailer.

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

Чем face restoration отличается от faceswap (Roop)? Это разные задачи. Face restoration восстанавливает и улучшает то же самое лицо — чёткость, детали, текстуру кожи (GFPGAN, CodeFormer). Faceswap (Roop, ReActor) заменяет лицо на другое, чужое. Первое чинит, второе подменяет.

Что выбрать — GFPGAN, CodeFormer или ADetailer? Выбор зависит от дефекта. Локальный inpainting удобен, когда лицо нужно перерисовать в стиле исходной модели; отдельный restoration-модуль — когда достаточно восстановить резкость и структуру. Ни один вариант не универсален: важные лица проверяют на сходство, возраст и признаки личности.

Как настроить ADetailer? Сначала выбирают совместимый детектор, затем проверяют его маску и только после этого подбирают силу перерисовки. Чем она выше, тем больше новых деталей появится и тем выше риск изменить человека. Названия моделей и полей зависят от версии расширения.

Можно ли использовать FR с FLUX? Постобработчик готового изображения обычно не зависит от генератора. Для автоматического inpainting нужна совместимость интерфейса, детектора и модели, которой перерисовывается область.

Работает ли FR на групповых фото? Зависит от инструмента. ADetailer обрабатывает все обнаруженные лица последовательно. GFPGAN — только первое или все по очереди (зависит от пайплайна).

FR делает лицо «не своим»? Может. На denoise > 0.5 ADetailer переписывает лицо сильно. Для сохранения идентичности — denoise 0.3 или комбинация с IP-Adapter FaceID.

Где скачать модели FR? GFPGAN: GitHub TencentARC/GFPGAN. CodeFormer: GitHub sczhou/CodeFormer. ADetailer: расширение в Extensions → Available в Automatic1111.

Главное

Face Restoration — пост-обработка для лиц в AI-картинках. GFPGAN и CodeFormer — для one-click фикса, но «реалистифицируют» аниме. Часто работает в паре с Upscaler — сначала Face Restoration, потом увеличение. В ComfyUI это пакет ComfyUI-Impact-Pack, в Automatic1111 — расширение ADetailer.