Photo Detail Edit
Benutzer stellen ein Originalbild und einen Bearbeitungs-Prompt bereit. Dieser Skill führt den gesamten Workflow aus: Erhaltungseinschränkungen anhängen → integrierte Bildbearbeitung → Strukturabgleich im kleinen Maßstab → lokale RGB-Transformation lernen → auf das Original in voller Größe anwenden → Ausgabe mit lokalen Vergleichen. Führen Sie nicht nur eine Generierung durch oder geben Sie Handlungsempfehlungen.
Eingabe und Grenzen
- Es wird eine lesbare Originalbilddatei benötigt. Überprüfen Sie zuerst Pixel, Byte-Größe, EXIF-Ausrichtung und Transparenz; eine visuelle Vorschau kann verkleinert sein und gilt nicht als „Original in voller Größe“. Wenn nur eine Sitzungsvorschau vorhanden ist und die Originaldatei nicht abgerufen werden kann, fordern Sie den Benutzer auf, die Originaldatei oder ein ZIP mit dem Originalbild bereitzustellen. Behaupten Sie nicht, echte Informationen aus verlorenen Details wiederhergestellt zu haben.
- Der Benutzer stellt lediglich Bild und Prompt bereit; der Agent bestimmt den Erhaltungsbereich, erstellt Segmentierungs-Hinweise und überprüft die Maske – der Benutzer muss keine manuelle Maske zeichnen.
- Bewahren Sie explizit vom Benutzer angeforderte Änderungen. Bereiche wie Hintergrundersatz, Hintergrundentfernung, Kleidungswechsel, Entfernen von Accessoires usw. dürfen in späteren Wiederherstellungsschritten nicht zurückgesetzt werden; für explizit geänderte Objekte oder Strukturen werden Ausschlussbereiche festgelegt.
- Dieser Workflow ist für Fotoretusche ausgelegt. Änderungen von Posen, Personenidentität oder vollständige Neugenerierungen haben möglicherweise keine zuverlässige Entsprechung; bewahren Sie in diesem Fall das Generierungsergebnis ehrlich auf und erläutern Sie die Einschränkungen der Wiederherstellung.
Workflow
1. Aufgabenverzeichnis erstellen
Erstellen Sie im aktuellen Arbeitsbereich ein neues Ausgabeverzeichnis, bewahren Sie das Originalbild und überschreiben Sie weder Originaldateien noch vorhandene Ausgaben. Speichern Sie den ursprünglichen Benutzer-Prompt, den tatsächlich gesendeten vollständigen Prompt und das generierte Basisbild. Beim Entpacken von ZIP-Anhängen Pfade validieren und keine vorhandenen Dateien überschreiben.
Wenn Abhängigkeiten nicht installiert sind, installieren Sie scripts/requirements.txt in der virtuellen Umgebung des aktuellen Projekts; bevorzugen Sie die Wiederverwendung einer kompatiblen Umgebung oder verwenden Sie uv venv / uv pip install --python ... -r .... Keine systemweite Installation erforderlich. Skripte laufen offline ohne Modell-Download.
2. GPT Image-Bearbeitung
- Zeigen Sie zuerst die lokale Originaldatei mit
view_imagean. Verwenden Sie das in dieser Sitzung verfügbare integrierteimage_gen-Bearbeitungstool mit der Originaldatei als Bearbeitungseingabe, nicht mit dem vorherigen Generierungsergebnis anstelle des Originals. - Tatsächlicher Prompt = Benutzer-Originaltext + feste Erhaltungseinschränkungen. Der feste Teil wird als zusätzliche Einschränkung angehängt, ersetzt oder verwässert das Benutzerziel nicht; die Ganzkörper-Kompositionsanforderung gilt nur für Fotos, die ursprünglich eine Ganzkörperkomposition waren. Speichern Sie diese genaue Verkettung.
- Bei Hintergrundentfernungs-/Freistellungs-/Transparenzhintergrund-Anfragen setzen Sie
transparent_background: true; beim Ersetzen durch einen neuen Hintergrund auf false. Andere Parameter folgen den aktuellen Tool-Fähigkeiten; erfinden Sie keine Qualitäts-, Größen- oder Modellversionsparameter und versprechen Sie nicht, dass der Prompt Pixel- oder Auflösungstreue garantiert. - Kopieren Sie die generierte Datei in das Aufgabenverzeichnis. Notieren Sie die tatsächliche Ausgabegröße und -größe. Standardmäßig eine Generierung; wiederholen Sie sie nur einmal, wenn das Tool fehlschlägt oder die Hauptanforderung des Benutzers offensichtlich übersehen wird, und vermeiden Sie endlose Neugenerierungen. Wechseln Sie nicht eigenmächtig zu einer kostenpflichtigen API/CLI.
3. Erhaltungsbereiche für dieses Bild festlegen
Zeigen Sie das Original- und das generierte Bild an. Erstellen Sie gemäß Regionenkonfiguration und Ausführungshinweise eine regions.json für diese Aufgabe und geben Sie Hauptmasken oder GrabCut-Seeds für Original und Generiertes an; Koordinaten werden aus dem aktuellen Bild bestimmt, nicht aus vorherigen Personenkoordinaten kopiert. Das Skript interpretiert die Konfigurationskoordinaten gemäß der EXIF-Anzeigeausrichtung des jeweiligen Bildes.
Masken sollten gemeinsame Subjekte abdecken, die erhalten werden müssen, und Hintergrund sowie vom Benutzer absichtlich geänderte Teile ausschließen. Transparente Vordergründe können Alpha nutzen, müssen aber dennoch vom Benutzer absichtlich neu gezeichnete Bereiche ausschließen. fill_holes ist standardmäßig deaktiviert; Lücken, die durch Objektgriffe oder Posen entstehen, können echte Hintergründe sein und sollten nicht blind gefüllt werden.
Wählen Sie mindestens zwei Personen-/Objekt-Detailpositionen für lokale Vergleiche; priorisieren Sie Gesichter, Aufdrucke, Stoffe/Wollstoffe, falls im Foto vorhanden. Die Konfiguration basiert auf der visuellen Beurteilung des Agenten, nicht auf einer festen Vorlage.
4. Analysieren, Überprüfen und dann Fusionieren
Mit denselben Parametern zuerst --stage analyze, dann --stage fuse:
<python> <skill>/scripts/restore_detail.py --source <original> --base <generated> --regions <regions.json> --out <job>/restored --stage analyze
Standard: --method local-rgb --structure-channel auto. In der Analysephase wird das Original auf eine gemeinsame Größe skaliert, die geometrische Korrespondenz überprüft, der Einfluss von Farbe, Kontrast und feiner Textur auf die Strukturbewertung reduziert und in zuverlässigen Bereichen eingeschränkte, monoton steigende lokale RGB-Farbkurven angepasst. Normale mehrfarbige Fotos verwenden die Luminanzstruktur; stark monochromatisches Licht wählt automatisch den entsprechenden Kanal – beide Bilder verwenden dieselbe Darstellung, nicht fest auf den Rot-Kanal.
Überprüfen Sie base-mask.png, source-mask.png, confidence-overlay.png und report.json. Bestätigen Sie, dass die tatsächliche Methode local-rgb ist und der Strukturkanal und der Übereinstimmungsbereich angemessen sind. Der Hintergrund darf nicht in den Wiederherstellungsbereich aufgenommen werden; bei offensichtlichen Maskenfehlern korrigieren Sie die Regionskonfiguration und führen die Analyse erneut durch. Erhöhen Sie die Abdeckung nicht durch Aufweichen der Übereinstimmungsschwelle.
<python> <skill>/scripts/restore_detail.py --source <original> --base <generated> --regions <regions.json> --out <job>/restored --stage fuse
Das Skript interpoliert die lokalen Kurvenparameter glatt hoch und wendet sie auf das registrierte Originalbild in voller Größe an, sodass echte Details durch die gewünschte Farb- und Lichttransformation gehen. An Positionen, an denen keine ausreichenden gemeinsamen Merkmale vorhanden sind, wird das hochskalierte generierte Bild verwendet; Hintergrund, Transparenz und explizit ausgeschlossene Bearbeitungsbereiche bleiben konsistent. Ohne ausreichende gemeinsame Merkmale werden keine Originalbildinhalte übernommen. Die Hauptfarb- und Lichtwerte sind ein Anpassungsergebnis – pixelgenaue Konsistenz kann nicht zugesichert werden, ebenso wenig wie die Bezeichnung der Originalgröße als vollständige Wiederherstellung der Bildqualität.
Es wird standardmäßig kein Lab-Graustufen-Hochfrequenzüberlagerung oder eine willkürliche Matrix oder vollständige 3D-LUT mit zu hoher Freiheit verwendet. --method lab-detail wird nur für explizit vom Benutzer angeforderte Vergleiche mit der alten Methode beibehalten; wechseln Sie nicht stillschweigend zur alten Methode.
5. Überprüfen und Ausliefern
- Überprüfen Sie die endgültige Vorschau und mindestens zwei lokale Vergleiche im Original-Pixelmaßstab auf echte Textur, Farbe und großflächige Beleuchtung. Achten Sie auf Geisterbilder, schwarze Blöcke, matte Schatten, Kanten und Bodenkontaktschatten. Verkünden Sie keine Bildverbesserungen allein aufgrund von Textur-Korrelation oder Abdeckungsrate. Verengen Sie bei Bedarf die Ausschlussbereiche und führen Sie Analyse und Fusion erneut aus.
- Bestätigen Sie in
report.json, dass die Pixeländerungen im Hintergrundbereich 0 sind, Alpha erhalten bleibt und PNG lesbar ist. Exakte Hintergrundkonsistenz gilt für verlustfreies PNG; JPEG-Kompression kann Pixel verändern. - Liefern Sie eine sichtbare Vorschau, ein PNG in voller Größe ohne Verluste und einen Link zum lokalen Vergleich. Ohne Transparenz zusätzlich JPEG ausliefern; transparente Bilder nicht als JPEG ausliefern.
- Geben Sie eine kurze Zusammenfassung der Ausgabegröße, des tatsächlichen Wiederherstellungsbereichs und offensichtlicher Einschränkungen; stellen Sie einen Link zur Datei mit dem tatsächlichen vollständigen Prompt bereit. Zählen Sie interpolierte, hochskalierte Pixel nicht als neue echte Details.
Aufrufbeispiele
"Verwenden Sie $photo-detail-edit, um dieses Originalbild zu bearbeiten: Bereinigen Sie Hintergrund und Beleuchtung, um ihm das Gefühl eines Studio-Shootings für ein Magazin zu geben."
"Verwenden Sie $photo-detail-edit, um den Hintergrund zu entfernen, ein transparentes PNG auszugeben und Personen- und Kleidungsdetails zu bewahren."