AIREITER

GFPGAN vs. CodeFormer zur Gesichtsrestaurierung: Einstellungen und APIs

Zuletzt aktualisiert: 2026-09-01 01:42:26

Gesichtsrestaurierung kann ein beschädigtes Porträt deutlich schärfer wirken lassen – und dabei unbemerkt die abgebildete Person verändern. Als pragmatischer Einstieg gilt: GFPGAN eignet sich eher für eine unkomplizierte, natürliche Auffrischung, während CodeFormer mehr Kontrolle bietet, wenn die Ähnlichkeit entscheidend ist. Neue Forschungsarbeiten aus 2026 setzen auf Referenzbilder, Diffusion und edge-taugliche Modelle. Als direkte Ersatzlösungen für die etablierten Implementierungen taugen sie derzeit aber noch nicht.

Erst das Schadensbild analysieren, dann das Modell wählen

Gesichtsrestaurierung ist nicht einfach nur Hochskalierung. Ein Super-Resolution-Modell vergrößert das Bild und schätzt fehlende Texturen im gesamten Frame. Ein Blind-Face-Restorer greift zusätzlich auf ein gelerntes Gesichtsmodell zurück, um Augen, Haut, Haare und andere Merkmale zu rekonstruieren, die im Original möglicherweise nicht mehr vorhanden sind. Das kann überzeugender aussehen – erhöht aber auch das Risiko, dass sich die Identität verschiebt.

Ausgangsmaterial oder ZielErster VersuchWarumWorauf achten?
Leicht unscharfes Porträt mit gut erkennbaren GesichtszügenGFPGANDer offizielle Vergleich beschreibt v1.3 als natürlich und geeignet für vergleichsweise hochwertige EingabenWirkt die Haut sauberer, ohne Muttermale oder Haarstruktur zu verlieren?
Sehr kleines oder stark beschädigtes GesichtCodeFormerMit dem w-Regler lässt sich festlegen, wie viel Rekonstruktion akzeptiert wirdPassen die neu erzeugten Augen und der Mund noch zur Person?
Echte Person, bei der die Ähnlichkeit Priorität hatCodeFormer mit höherem wEin höheres w bevorzugt im Allgemeinen die Treue zur EingabeIst etwas Restunschärfe besser als ein erfundenes Gesicht?
Gesicht und beschädigter HintergrundCodeFormer mit Hintergrundverbesserung oder ein separater Upscaler für das gesamte BildCodeFormer kann Nicht-Gesichtsbereiche an Real-ESRGAN übergebenBleiben Übergänge zwischen Gesicht, Hintergrund und Haaren natürlich?
Das gesamte Bild soll vergrößert, aber nicht gezielt am Gesicht repariert werdenReal-ESRGANDas Modell ist in erster Linie ein allgemeiner Bild-Restaurator und Upscaler mit optionaler GesichtsverbesserungÜberschreibt die Gesichtsverbesserung nützliche Texturen?
Echtzeit-Inferenz auf Mobilgeräten oder Embedded-SystemenCFRNet im Blick behaltenDie Autoren zielen auf Consumer-NPUs mit 256×256Gibt es bereits einen veröffentlichten und unterstützten Checkpoint?

Ein vorsichtiger Workflow behält das unveränderte Original, arbeitet mit einer Kopie und vergleicht das Gesicht bei 100 Prozent, bevor das vergrößerte Ergebnis bewertet wird.

Wo die einfache Entscheidungstabelle an ihre Grenzen kommt

Bei leichter Unschärfe oder einem KI-generierten Gesicht mit kleinen Fehlern ist GFPGAN ein sinnvoller erster Versuch, wenn du aufräumen möchtest, ohne umfangreich neu zu rekonstruieren. Bei einem verzerrten, winzigen oder stark beschädigten Gesicht ist CodeFormer meist der bessere Startpunkt, weil die Einstellung für die Detailtreue den Zielkonflikt sichtbar macht.

Kratzer und verblasste Bereiche im gesamten Scan sind ein separates Problem. GFPGAN und CodeFormer konzentrieren sich auf Gesichter. Behandle Gesicht und Hintergrund deshalb getrennt und kontrolliere anschließend Haaransatz, Brille und das zusammengefügte Bildkorn. Bei mehreren Gesichtern oder ungewöhnlichen Accessoires solltest du eine Option für ausgerichtete Gesichter oder die Auswahl des mittleren Gesichts verwenden, sofern der jeweilige Wrapper sie anbietet.

Ein schärferes Ergebnis ist nicht automatisch „wiederhergestellte Evidenz“. Wenn die ursprünglichen Pixel fehlen, schätzt der Restorer ein plausibles Gesicht. Für Familienarchive ist diese Unterscheidung wichtig – und für rechtliche, journalistische oder identifikationsbezogene Anwendungen ganz besonders.

GFPGAN, CodeFormer und die Forschung von 2026 spielen in unterschiedlichen Ligen

GFPGAN und CodeFormer sind offiziell veröffentlichte Open-Source-Forschungsimplementierungen. Das offizielle GFPGAN-Repository dokumentiert Python 3.7+, PyTorch 1.7+, vortrainierte Gewichte und die Inferenz über die Kommandozeile. Das CodeFormer-Repository beschreibt die lokale Inferenz, Modi für ganze Bilder und Videos sowie einen Fidelity-Regler von 0 bis 1.

Die folgenden Projekte aus 2026 sind Forschungssignale und keine gleichwertigen gehosteten Produkte. Die verlinkten Paper dokumentieren nicht dieselbe Kombination aus herunterladbarem Workflow, Produktions-API, klarer Lizenzlage und planbarer Abrechnung.

ProjektWas ist neu?Belege im PaperEinordnung
CFRNetEin Restorer im ResNet-Stil mit 2,0 Millionen Parametern, trainiert als Fixpunktoperator23 ms pro INT8-Zyklus auf einer HiSilicon-Hi3402-NPU; Testset mit 300 BildernEingereicht am 5. Juni 2026; kein bewiesener GFPGAN-Ersatz
HDRFaceHochdimensionale Repräsentationen aus dem beschädigten Eingang und einer ZwischenrestaurierungImplementiert mit SD V2.1-base und Qwen-ImageEingereicht am 14. Mai 2026; im Ausgangsmaterial keine gehostete API und kein Preis genannt
IConFaceOptionale Konditionierung mit bis zu drei Referenzbildern derselben IdentitätBerichtet führende Kompatibilität mit Referenzbildern und einen von Menschen geprüften Identitäts-BenchmarkÜberarbeitet am 5. August 2026; vielversprechender Referenz-Workflow, aber keine direkte Baseline-Alternative

Was GFPGAN gut kann – und wann es Gesichter verändert

GFPGAN nutzt ein vortrainiertes generatives Gesichtsmodell, in der veröffentlichten Methode unter anderem ein auf StyleGAN2 basierendes Prior, um beschädigte Gesichter zu restaurieren. Laut offiziellem README liefert v1.3 natürlichere Ergebnisse und kommt mit sehr schlechter Eingangsqualität besser zurecht. Gleichzeitig wird darauf hingewiesen, dass v1.3 nicht immer besser als v1.2 ist und die Identität leicht verändern kann. GFPGAN steht unter der Apache License 2.0.

Der offizielle Versionsvergleich ist qualitativ und kein numerischer Benchmark. v1.2 wird als schärfer, aber gelegentlich unnatürlich beschrieben; v1.3 soll natürlicher, dafür nicht besonders scharf sein. GFPGAN ist damit ein sinnvoller erster Durchlauf, wenn das ursprüngliche Gesicht grundsätzlich stimmt. Einen expliziten Regler für den Zielkonflikt zwischen Identität und Rekonstruktion wie bei CodeFormer gibt es jedoch nicht.

Offizieller Vergleich der GFPGAN-Versionen

Was der Fidelity-Regler von CodeFormer tatsächlich verändert

CodeFormer verwendet für die blinde Gesichtsrestaurierung einen Transformer mit Codebook-Lookup. Der zentrale Regler ist die Fidelity-Gewichtung w mit dem dokumentierten Wertebereich [0, 1]. Die Autoren geben an, dass kleinere w-Werte im Allgemeinen ein hochwertiger wirkendes Ergebnis liefern, während größere Werte die Identität und den Bildinhalt der Eingabe besser bewahren.

w ist kein Schieberegler für die Bildqualität, sondern ein Kompromiss: Ein niedriger Wert kann ein saubereres Gesicht erzeugen, indem er Details erfindet. Ein hoher Wert hält sich stärker an die Vorlage und lässt dafür Unschärfe, Kompressionsartefakte oder andere Schäden sichtbar. Im Ganzbild-Modus fügt CodeFormer das restaurierte Gesicht außerdem wieder in die Szene ein. Das README warnt, dass dabei die Haarstruktur am Übergang zwischen Gesicht und Hintergrund leiden kann.

CodeFormer steht unter der NTU S-Lab License 1.0. Lies die Lizenz vor einer Weiterverteilung oder kommerziellen Integration, statt davon auszugehen, dass ein gehosteter Endpunkt und das Repository identische Bedingungen haben.

Die Grenzen der veröffentlichten Benchmarks

Es gibt brauchbare veröffentlichte Daten, aber keine universelle Head-to-Head-Rangliste aus 2026 für jedes Modell und jedes Schadensbild. Das ICCV-Paper von 2023 zur iterativen Diffusionsrestaurierung testete GFPGAN und CodeFormer neben weiteren Baselines auf CelebA-HQ.

In einer Tabelle mit synthetischen Beschädigungen nannte das Paper folgende Werte:

ModellPSNRArcFace-Identitätsscore
GFPGAN26.950.59
CodeFormer25.700.75
IDM, die Methode des Papers27.420.87

Diese Werte gelten nur für das jeweilige Testprotokoll und sind kein universelles Ranking für 2026. Das Paper verwendete eigene Datensätze, einen eigenen Beschädigungsprozess, eigene Implementierungen und eine eigene Bewertungsmethode. Die Zahlen helfen zu verstehen, warum neuere Restorer stärker auf Authentizität setzen. Sie sagen aber nicht voraus, welches Modell bei einem bestimmten Familienfoto das beste Ergebnis liefert.

Parameter so einstellen, dass kein Plastikgesicht entsteht

Der typische Plastikgesicht-Effekt entsteht, wenn Restaurierungsstärke, Identitätstreue und Compositing über einen einzigen Regler kontrolliert werden sollen. Tatsächlich sind es getrennte Entscheidungen.

Ein sinnvoller Startbereich für CodeFormer

Lass dasselbe Ausgangsbild zunächst mit drei Einstellungen durchlaufen, bevor du Bild oder Modell wechselst:

w-BereichWas ist zu erwarten?Geeignet, wenn
0.3–0.5Stärkere Rekonstruktion und mehr erfundene DetailsAugen oder Mund stark beschädigt sind und die Identität ohnehin unsicher ist
0.5–0.7Kompromiss zwischen sichtbarer Verbesserung und Treue zur EingabeDu einen allgemeinen ersten Vergleich brauchst
0.8–1.0Näher an der Vorlage, dafür bleiben mehr ursprüngliche Schäden sichtbarÄhnlichkeit wichtiger ist als maximale Schärfe

Die Bereiche beschreiben den dokumentierten Zielkonflikt und sind keine Garantie für jeden Wrapper. Das CodeFormer-README verwendet w=0.5 für die Restaurierung ausgerichteter Gesichter, w=0.7 für die Ganzbildverbesserung und w=1.0 im Beispielbefehl für Videos.

Sieht das Ergebnis wie eine Wachsmaske aus, vergleiche zuerst einen höheren w-Wert, eine geringere Sichtbarkeit oder Überblendung des Gesichts, sofern der Anbieter diese Option bereitstellt, sowie einen Ausschnitt mit mehr Originalumgebung. Etwas ursprüngliche Textur zurückzumischen kann den aufgesetzten Eindruck reduzieren, selbst wenn der restaurierte Ausschnitt scharf ist.

Diese Punkte solltest du zwischen den Durchläufen prüfen

  1. Identität: Augenabstand, Nasenbreite, Mundform, Gesichtskontur und markante Merkmale.
  2. Textur: Poren, Sommersprossen, Bartstoppeln, einzelne Haare und Filmkorn.
  3. Accessoires: Brille, Ohrringe, Hüte und Haare, die über das Gesicht fallen.
  4. Einbindung: Licht, Farbe, Körnung sowie die Kante zwischen Gesicht und Hintergrund.
  5. Reproduzierbarkeit: Ob ein zweiter Durchlauf das Gesicht erneut verändert.

GFPGAN bietet nicht denselben w-Regler. Setze stattdessen Modellversion sowie Sichtbarkeits- und Blend-Optionen vorsichtig ein. Laut offiziellem Repository kann v1.3 zweimal ausgeführt werden. Mehrfaches Restaurieren sollte aber ein Experiment bleiben. Wenn der zweite Durchlauf Identität oder Textur verändert, behalte das erste Ergebnis.

Lokale Ausführung: volle Kontrolle, veraltete Abhängigkeiten

Bei lokaler Inferenz bleibt das Bild auf deinem Rechner. Dafür musst du dich selbst um Python, PyTorch, Modellgewichte, CUDA, Detektor-Pakete und Dateiberechtigungen kümmern.

GFPGAN lokal installieren

Das offizielle Repository dokumentiert eine unkomplizierte Variante, die keine eigenen CUDA-Erweiterungen benötigt:

git clone https://github.com/TencentARC/GFPGAN.git
cd GFPGAN
pip install basicsr
pip install facexlib
pip install -r requirements.txt
python setup.py develop
wget https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth \
  -P experiments/pretrained_models
python inference_gfpgan.py -i inputs/whole_imgs -o results -v 1.3 -s 2

Im README werden Python >=3.7 und PyTorch >=1.7 genannt. Eine NVIDIA-GPU und CUDA sind in der dokumentierten Einrichtung optionale Wege. Der Befehl unterstützt Ordner, die finale Skalierung, Hintergrund-Upscaling, die Verarbeitung nur des mittleren Gesichts, ausgerichtete Gesichter und die automatische Erkennung von Dateiendungen.

CodeFormer lokal installieren

Die offizielle CodeFormer-Umgebung ist etwas aufwendiger:

git clone https://github.com/sczhou/CodeFormer
cd CodeFormer
conda create -n codeformer python=3.8 -y
conda activate codeformer
pip3 install -r requirements.txt
python basicsr/setup.py develop
python scripts/download_pretrained_models.py facelib
python scripts/download_pretrained_models.py CodeFormer

Das Repository nennt PyTorch >=1.7.1 und CUDA >=10.1. dlib ist für den dort beschriebenen Detektor und den Pfad zum Zuschneiden von Gesichtern optional. Für den dokumentierten Video-Workflow unter Windows und Mac wird FFmpeg benötigt.

Für ein ausgerichtetes Gesicht mit 512×512 Pixeln lautet das offizielle Beispiel:

python inference_codeformer.py -w 0.5 --has_aligned \
  --input_path inputs/cropped_faces

Für die Verbesserung ganzer Bilder verwendet das README -w 0.7 und ergänzt optional --bg_upsampler realesrgan sowie --face_upsample. Das Repository veröffentlicht keine verlässlichen Anforderungen an VRAM, Durchsatz oder Latenz. Teste deshalb die konkrete Umgebung, statt ein bestimmtes Hardware-Minimum zu versprechen.

API-Kosten und Integrationsvarianten

Gehostete Inferenz ist für erste Prototypen bequemer. Preis und Lizenz bleiben davon jedoch unabhängige Entscheidungen.

Gehostete Kosten mit Stand September 2026

Die offiziellen Seiten von GFPGAN auf Replicate, CodeFormer auf Replicate und Real-ESRGAN auf Replicate nennen ungefähre Kosten. Die Preise wurden am 1. September 2026 geprüft. Für die beiden Gesichtsmodelle wird eine typische Fertigstellung innerhalb von 3 Sekunden auf einer Nvidia L40S angegeben; je nach Eingabe können die Schätzungen abweichen.

Gehostetes ModellAngegebene KostenUngefähre Durchläufe pro 1 $
tencentarc/gfpgan0,0020 $/Durchlauf500
sczhou/codeformer0,0028 $/Durchlauf357
nightmareai/real-esrgan0,0020 $/Ausgabebild500
Kosten pro Durchlauf bei gehosteter Gesichtsrestaurierung

Auf der CodeFormer-Seite von Replicate steht ausdrücklich, dass die API-Version nicht kommerziell genutzt werden darf. Diese Aussage bezieht sich auf den dort gehosteten Dienst. Bei anderen Anbietern müssen die Bedingungen separat geprüft werden.

Die fal-CodeFormer-API-Dokumentation kennzeichnet ihren Endpunkt als kommerziell nutzbar. Sie bietet fidelity mit einem Standardwert von 0.5, upscale_factor mit einem Standardwert von 2, optionales Face-Upscaling, Ausrichtung, die Auswahl des mittleren Gesichts und einen Seed. Ein Preis wird nicht veröffentlicht. Leite die Kosten von fal daher nicht aus der Replicate-Schätzung ab.

Minimaler Workflow für einen gehosteten Dienst

Die fal-Dokumentation zeigt folgenden Workflow mit einem JavaScript-Client:

import { fal } from "@fal-ai/client";

const result = await fal.subscribe("fal-ai/codeformer", {
  input: {
    image_url: "https://example.com/input.jpg",
    fidelity: 0.7,
    upscale_factor: 2,
    face_upscale: true
  },
  logs: true
});

console.log(result.data);

Für längere Jobs bietet dieselbe Dokumentation das Einreihen in eine Warteschlange, Statusabfragen, das Abrufen von Ergebnissen und Webhook-Callbacks. Halte FAL_KEY oder einen entsprechenden Provider-Schlüssel auf deinem Server – niemals im Browser- oder Mobile-Code.

GFPGAN-Modellseite auf Replicate CodeFormer-Modellseite auf Replicate

Womit Nutzer in der Praxis weiterhin kämpfen

In den ausgewerteten Nutzer-Threads, Setup-Berichten und Meldungen zu Upscaling-Fehlern berichten Anwender von sichtbar verbesserten Gesichtern, die anschließend nicht mehr wie dieselbe Person aussehen, sowie von Problemen bei der lokalen Integration. Das sind Erfahrungsberichte aus Workflows und keine kontrollierten Benchmarks.

„Ich habe den Eindruck, dass CodeFormer eher ein Gesicht erfindet, als es zu reparieren.“ — u/TheMemo, r/StableDiffusion

Die praktische Konsequenz ist simpel: Teste beide Modelle mit repräsentativen Gesichtern und friere die Umgebung für Batch-Pipelines ein.

FAQ: Gesichtsrestaurierung mit GFPGAN und CodeFormer

Ist GFPGAN oder CodeFormer besser für alte Fotos?

Als Faustregel gilt: Starte bei einem gut erkennbaren Gesicht und dem Wunsch nach natürlicher Auffrischung mit GFPGAN. Bei starker Beschädigung oder wenn die Kontrolle über die Ähnlichkeit wichtiger ist, nimm CodeFormer.

Welcher Fidelity-Wert bei CodeFormer bewahrt die Identität?

Höhere w-Werte bevorzugen die Treue zur Eingabe, niedrigere Werte im Allgemeinen ein saubereres, aber stärker erfundenes Ergebnis. Vergleiche 0.5, 0.7 und 0.9. Entscheide dich anschließend für das Ergebnis, das markante Merkmale bewahrt – nicht automatisch für das mit den schärfsten Augen.

Sollte ich vor dem Upscaling restaurieren?

Als praktischer Workflow empfiehlt es sich, das Gesicht zunächst auf einer Kopie zu restaurieren und das fertige Bild anschließend hochzuskalieren. Eine kombinierte Lösung wie Real-ESRGAN mit Gesichtsverbesserung ist eine Ausnahme, braucht aber ebenfalls eine Kontrolle von Identität sowie Gesicht-Hintergrund-Übergängen.

Können diese Modelle vollständig verwischte Details zurückholen?

Nein. Kein Modell kann zuverlässig Informationen zurückholen, die nie aufgenommen wurden. GFPGAN und CodeFormer können plausible Gesichtszüge erzeugen. Ein schärferes Auge oder ein klarerer Mund ist deshalb kein Beweis dafür, dass das ursprüngliche Detail wiederhergestellt wurde.

Sind die Modelle von 2026 bereit, GFPGAN oder CodeFormer zu ersetzen?

Die verlinkten Paper zeigen wichtige Entwicklungsrichtungen – darunter Edge-Bereitstellung, hochdimensionale Konditionierung und Referenzbilder derselben Identität. Eine breit verfügbare Ersatzlösung mit vergleichbarer lokaler und gehosteter Workflow-Dokumentation sind sie derzeit aber noch nicht.

Darf ich die CodeFormer-API von Replicate kommerziell nutzen?

Auf der CodeFormer-Seite von Replicate steht, dass die API-Version nicht kommerziell genutzt werden darf. Das zugrunde liegende Repository hat seine eigene NTU S-Lab License 1.0. Andere Anbieter können abweichende Bedingungen veröffentlichen.

Die praktische Entscheidung ist ein Kompromiss zwischen Erfinden und Kontrolle

Wähle drei repräsentative Ausschnitte: leichte Unschärfe, starke Unschärfe sowie ein zerkratztes Porträt mit niedriger Auflösung. Lass GFPGAN und CodeFormer mit w=0.5, 0.7 und 0.9 laufen, bewahre das Original neben jedem Ergebnis auf und verwerfe alle Varianten, die identitätsrelevante Merkmale verändern. Wenn der Hintergrund ebenfalls repariert werden muss, übergib die Ganzbildvergrößerung an einen separaten Upscaler.

Als nächsten Schritt findest du im Real-ESRGAN-Leitfaden zu Download und GUI sowie im Leitfaden zu kostenlosen KI-Video-Upscalern weitere Informationen.