GPT Image 2.6: Objekte markieren, bearbeiten und das Ergebnis prüfen
Transparente Markierungen vorbereiten, einen Ofox-Edit-Aufruf ausführen und Änderungen außerhalb des Ziels prüfen. Mit echten Ergebnissen und Beispieldateien.
Um eine Bearbeitung mit GPT Image 2.6 durch einen Kreis zu steuern, senden Sie das Originalbild und eine separate transparente PNG-Markierung an den Images-Edit-Endpunkt. Die Markierung wird über markup übergeben. Beschreiben Sie die gewünschte Änderung im Prompt. Beide Bilder müssen aufeinander ausgerichtet sein. Prüfen Sie anschließend das gesamte Ergebnis: Das richtige Objekt zu treffen bedeutet nicht, dass alle unmarkierten Pixel unverändert bleiben.
Wir haben das am 6. November 2026 über Ofox getestet. Zwei Anfragen verwendeten dieselbe Illustration mit drei Bechern und denselben Prompt. Nur die rote Ellipse wechselte vom linken zum rechten Becher. Dadurch wurde jeweils ein anderer Becher orange. Beide Ergebnisse veränderten aber auch Pixel außerhalb des Ziels. Originaldateien, tatsächliche Ausgaben, Einstellungen und lokale Prüfskripte stehen bereit, damit Sie diesen Unterschied selbst untersuchen können.
Das Beispiel herunterladen, bevor Sie einen kostenpflichtigen Aufruf starten
Laden Sie das vollständige Markup-Beispiel herunter. Das Paket enthält das Original als PNG und SVG, zwei transparente Markierungsebenen, zwei erzeugte PNGs, den Prompt, Metadaten der Anfragen und drei Python-Hilfsskripte. Herunterladen und lokal prüfen löst keinen API-Aufruf aus.
Das Original ist eine eigens für diesen Test erstellte Illustration, kein Kundenfoto. Drei türkisfarbene Reisebecher sind mit A, B und C gekennzeichnet und tragen jeweils A-17. Titel, Hintergrund, unterer Strich und orangefarbener Punkt dienen als weitere Prüfbereiche. Die einfachen Merkmale machen ein falsches Ziel oder veränderte Schrift leichter erkennbar. Sie belegen keine Leistung bei Gesichtern, Schmuck, echten Produktfotos oder großen Serien.
Für die lokalen Bildprüfungen benötigen Sie Python 3 und Pillow. Wechseln Sie im Terminal in den entpackten Ordner und legen Sie eine eigene Umgebung an:
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install Pillow
Die Shell-Beispiele verwenden die Syntax von macOS beziehungsweise Linux. Aktivieren Sie die virtuelle Umgebung unter Windows mit dem zu Ihrer Shell passenden Befehl. decode_edit.py benötigt nur die Python-Standardbibliothek.
Markierung, Maske oder exakte Montage wählen
Markup eignet sich, wenn sich ein Ziel leichter zeigen als beschreiben lässt: einen von mehreren ähnlichen Bechern verändern, ein mit einem Pfeil bezeichnetes Objekt entfernen oder ein Detail in einer dichten Komposition bearbeiten. Die Markierung vermittelt die Bearbeitungsabsicht; sie gehört nicht zum fertigen Motiv.
| Anforderung | Möglicher Ausgangspunkt | Was Sie prüfen sollten |
|---|---|---|
| Eines von mehreren ähnlichen Objekten auswählen | Separate Markierungsebene und konkreter Prompt | Richtiges Ziel, entfernte Markierung, akzeptable übrige Objekte |
| Einen Bereich durch eine Transparenzmaske eingrenzen | Maskenbasierter Ablauf | Interpretation der Maske und Änderungen im Umfeld |
| Freigegebenes Logo oder Hintergrund exakt erhalten | Original behalten und akzeptierte Änderungen im Bildeditor montieren | Ebenengrenzen, Ausrichtung und identische geschützte Pixel |
Die letzte Zeile ist eine Empfehlung zum Arbeitsablauf, keine mit diesen zwei Aufrufen getestete Funktion. Sind unveränderte Pixel Teil der Abnahmebedingungen, reicht eine ähnliche Optik nicht aus. Der Leitfaden zu Masken und unveränderten Produktbereichen (Englisch) behandelt diese gesonderte Aufgabe.
Laut OpenAI-Leitfaden zur Bilderzeugung unterstützt der Images-Edit-Endpunkt Markup bei Image 2.5 und 2.6. Die Funktion ist also nicht exklusiv für 2.6. Sie bezieht sich auf das erste Eingabebild und lässt sich nicht mit mask oder prompt_rewriter kombinieren. Die transparente PNG-Ebene muss dieselben Abmessungen wie das korrekt ausgerichtete Original haben. Dokumentiert sind maximal 16.777.216 Pixel pro Bild und 50 MB für die Markierungsdatei. Unser Beispiel verwendet 1024 × 1024 Pixel und eine wesentlich kleinere Markierungsdatei.
Nur die Markierung als transparente Datei exportieren
Im Beispiel ist source.png das Original und markup-left.png die Markierung. Für die rechte Seite verwenden Sie markup-right.png. Die SVGs sind bearbeitbare Quelldateien; sie wurden nicht an die API gesendet.
So erstellen Sie eine eigene Markierung in einem Bildeditor mit Ebenen:
- Öffnen Sie das Original und legen Sie zunächst seine Ausrichtung fest. Berücksichtigt der Editor EXIF-Drehungen, exportieren Sie vor dem Zeichnen eine korrekt ausgerichtete Arbeitskopie.
- Legen Sie über dem Bild eine transparente Ebene an, ohne die Leinwandgröße zu ändern.
- Umkreisen Sie ein Ziel deutlich. Lassen Sie andere Objekte möglichst außerhalb des Kreises und verdecken Sie wichtige Schrift nicht mit einem dicken Strich.
- Blenden Sie das Original aus und exportieren Sie nur die Markierungsebene als PNG. Behalten Sie die gesamte Leinwand bei, statt auf den Kreis zuzuschneiden.
- Öffnen Sie Original und Markierung erneut übereinander und kontrollieren Sie die Ausrichtung. Speichern Sie das Original separat; ersetzen Sie es nicht durch eine zusammengeführte Version mit eingezeichnetem Kreis.
Ein aufgemaltes Schachbrettmuster ist keine Transparenz. Das gilt auch für eine weiße PNG-Datei mit rotem Kreis. Die Markierung braucht tatsächlich transparente Hintergrundpixel im Alphakanal. Eine transparent wirkende Vorschau ist dafür kein Nachweis.
Starten Sie die mitgelieferte lokale Prüfung:
python3 preflight.py source.png markup-left.png
Unsere Datei liefert passed: true, die Größe [1024, 1024] und den Alpha-Bereich [0, 255]. Das Skript lehnt eine deckende Ebene, eine vollständig transparente leere Ebene, abweichende Abmessungen und JPEG ab. Alle vier Negativfälle wurden lokal getestet. Ein positives Ergebnis bestätigt nur grundlegende Dateieigenschaften, weder Modellzugriff noch korrekte Kreisposition oder erfolgreiche Bearbeitung.
Eine Änderung und eine konkrete Liste geschützter Details formulieren
Beide Anfragen verwendeten exakt diesen Prompt. Er liegt auch als prompt.txt im Download:
Change only the body of the travel mug inside the red ellipse to warm orange. Keep its dark lid, handle geometry, cream A-17 label and label text unchanged. Keep the other two mugs, their colors, the A B C headings, FIELD / 03 title, background, bottom line and small orange dot unchanged. The red ellipse is an editing annotation: do not draw it in the final image. Keep the original framing and flat illustration style.
Der Prompt sagt weder „links“ noch „rechts“. Die Markierung bestimmt die Position. Er trennt den Becherkörper von Deckel, Griffgeometrie und Etikett und fordert ausdrücklich, den roten Kreis nicht in die Ausgabe zu übernehmen. Ebenso sollen die anderen Becher und Farben, Beschriftungen, der Titel, Hintergrund, Strich und Punkt sowie Bildausschnitt und flächiger Illustrationsstil erhalten bleiben.
Ersetzen Sie für eigene Bilder Objekt, Änderung und zu schützende Details. Beginnen Sie mit einer Revision, statt gleichzeitig Farbe, Beleuchtung, Position und Hintergrund zu ändern. Das erleichtert die Fehlersuche. Eine Anweisung zum Erhalten ist eine zu prüfende Anforderung, kein Beleg, dass sie erfüllt wurde.
Der Leitfaden für Bild-Prompts erläutert gezielte Bearbeitungen und modellspezifische Einstellungen. Für diese kleine Aufgabe nutzten wir quality=medium und complexity=low; input_fidelity ließen wir weg. Das beschreibt unseren Versuch und ist keine universelle Empfehlung für jedes Bild.
Die Anfrage über Ofox senden
Getestet wurde https://api.ofox.ai/v1/images/edits mit der Ofox-Modell-ID openai/gpt-image-2.6-flare. Die IDs eines direkten Anbieterzugangs und eines Gateways können voneinander abweichen. Prüfen Sie vor einem Austausch die Ofox-Dokumentation zur Images API und die in Ihrem Konto verfügbaren Modelle.
Der folgende Aufruf mit den Beispieldateien verbraucht Kontoguthaben. Hinterlegen Sie OFOX_API_KEY sicher in Ihrer lokalen Umgebung, nicht im Artikel, in Download-Dateien oder einem geteilten Notebook.
curl --fail-with-body --silent --show-error \
https://api.ofox.ai/v1/images/edits \
-H "Authorization: Bearer ${OFOX_API_KEY:?Set OFOX_API_KEY first}" \
-F 'model=openai/gpt-image-2.6-flare' \
-F 'image=@source.png;type=image/png' \
-F 'markup=@markup-left.png;type=image/png' \
-F 'prompt=<prompt.txt' \
-F 'size=1024x1024' \
-F 'quality=medium' \
-F 'complexity=low' \
-F 'n=1' \
-F 'output_format=png' \
-o response.json
Lassen Sie curl den Multipart-Content-Type samt Boundary erzeugen. Fügen Sie keinen bloßen Header Content-Type: multipart/form-data hinzu. In der Formularsyntax liest prompt=<prompt.txt den Dateiinhalt als Prompt-Feld ein; es sendet nicht den Dateinamen als Prompt.
Nach erfolgreichem Abschluss von curl dekodieren und prüfen Sie die Antwort:
python3 decode_edit.py response.json my-left-result.png
python3 inspect_edit.py source.png my-left-result.png
Der Decoder prüft auf Fehlerantworten und die PNG-Signatur und überschreibt keine vorhandene Ausgabedatei. Das Vergleichsskript erwartet das mitgelieferte 1024 × 1024-Beispiel und feste Ausschnittkoordinaten. Ändern Sie diese bei eigenen Fotos auf sinnvolle geschützte Bereiche, statt die Becherkoordinaten blind zu übernehmen.
Für den Versuch mit dem rechten Ziel ändern Sie nur markup-left.png in markup-right.png, behalten source.png bei und wählen neue Dateinamen für Antwort und Ausgabe. Jeder Aufruf ist kostenpflichtig. Verwenden Sie nicht das linke Ergebnis als zweite Eingabe: Dann würde sich auch das Ausgangsbild ändern und der Vergleich wäre ein anderer.
Was die beiden tatsächlichen Ergebnisse zeigen

Browseraufnahme unseres englischsprachigen lokalen Prüfberichts mit echten API-Ausgaben und Messwerten. Das ist nicht die Oberfläche von Ofox Chat. Das dekorative Titelbild ist eine separate Konzeptillustration.
| Beobachtung | Linke Markierung | Rechte Markierung |
|---|---|---|
| Sichtbare Zieländerung | Körper von Becher A wurde orange | Körper von Becher C wurde orange |
| HTTP-Antwort | 200 | 200 |
| Ausgabe | 1024 × 1024 PNG | 1024 × 1024 PNG |
| Clientseitige Dauer einschließlich Netzwerk | 11,566 Sekunden | 10,229 Sekunden |
| Zurückgegebene Eingabe-/Ausgabe-Token | 1.286 / 1.449 | 1.265 / 1.449 |
| Rote Markierung in der fertigen Ausgabe | Nein | Nein |
Es gab einen Aufruf pro Ziel, ohne Wiederholungen. Die Zeiten sind Beobachtungen, kein Geschwindigkeitsvergleich und keine zugesicherte Latenz. Trotz identischem Prompt unterschieden sich die Eingabe-Token; der Versuch erklärt nicht, warum. Sunburst und andere Anbieter wurden nicht verglichen.
Die Etiketten bleiben lesbar, und jeweils der gewünschte Becher wechselt die Farbe. Allerdings kommen feine Texturen und Schattierungen hinzu. Die übrigen Becher wirken weiterhin türkis, ihre RGB-Werte stimmen aber nicht exakt mit dem Original überein. Öffnen Sie Original, linkes Ergebnis und rechtes Ergebnis in voller Auflösung, statt nur den Screenshot zu beurteilen.
Das lokale Skript vergleicht gleich große Ausschnitte ohne Skalierung und berechnet die mittlere absolute Differenz über die RGB-Kanäle auf einer Skala von 0 bis 255:
| Ausschnitt | Linkes Ergebnis | Rechtes Ergebnis |
|---|---|---|
| Mittlerer Becherkörper, in beiden Anfragen nicht ausgewählt | 11,866 | 10,925 |
| Titelbereich | 3,141 | 3,890 |
| Unterer kurzer Strich | 1,853 | 1,527 |
Das sind Pixelunterschiede, keine Qualitätsnoten oder allgemeinen Abnahmegrenzen. Alle fünf untersuchten Ausschnitte, einschließlich der im Download dokumentierten Zielbereiche, weichen vom Original ab. Die Ausgaben sind somit auch außerhalb des markierten Objekts keine exakten Kopien. Gemessen wurden nicht sämtliche geschützten Pixel; die Werte entscheiden auch nicht pauschal, ob eine Änderung für Ihren Zweck unzulässig ist.
Das Ergebnis an den Abnahmekriterien messen
Prüfen Sie vor der Übergabe drei getrennte Punkte:
- Auswahl: Das gewünschte Objekt wurde verändert, der Nachbar nicht ebenfalls orange eingefärbt, und die Markierung ist verschwunden.
- Inhalt: Etiketten, Zahlen, Marken und geforderte Formen sind korrekt. Lesen Sie in diesem Beispiel jedes
A-17, nicht nur die großen A/B/C-Buchstaben. - Erhaltung: Sind kleine Änderungen von Textur oder Farbe akzeptabel? Bei geforderter exakter Übereinstimmung vergleichen Sie geschützte Bereiche pixelweise und behalten Originalebenen für die Montage.
Bewahren Sie Original, Markierung, Prompt, Modell-ID, Einstellungen, Ausgabe und Abnahmenotizen gemeinsam auf. Ändern Sie bei einer Revision nur eine Ursache auf einmal. Ein falsch platzierter Kreis verlangt eine neue Markierung. Stimmt das Ziel, aber der Stil driftet ab, präzisieren Sie die Erhaltungsanforderungen oder wählen einen anderen Bearbeitungsablauf. Wiederholtes Generieren ohne Diagnose macht den Vergleich weniger aussagekräftig.
Die Bildaufgabe in Ofox Chat ausprobieren
Für einen dialogbasierten Ablauf können Sie Ofox Chat öffnen und das Original mit einem konkreten Auftrag hochladen: welches Objekt sich wie ändern soll und welche Details bleiben müssen. Prüfen Sie anschließend Auswahl, Schrift und Erhaltung nach denselben Kriterien.
Image 2.6 ist in Ofox Chat verfügbar, aber die zwei Tests dieses Artikels liefen über die API. Wir haben kein Chat-Bedienelement verifiziert, das eine separate transparente Ebene als API-Feld markup weiterreicht. Ein markiertes Referenzbild im Chat belegt nicht, dass dieselben Felder oder Einstellungen verwendet werden. Für die exakte Reproduktion der Zwei-Dateien-Anfrage nutzen Sie die API-Schritte oben.
Datei-, Anfrage- und Ergebnisfehler getrennt untersuchen
| Symptom | Zuerst prüfen | Nächster Schritt |
|---|---|---|
| Markierung abgelehnt oder Größe abweichend | Ausrichtung und Leinwandgröße | Ausrichtung normalisieren, gleiche Maße exportieren, Vorprüfung wiederholen |
| Weißes Rechteck verdeckt das Bild | Alphakanal der Markierung | Original und Hintergrund ausblenden, nur transparente Zeichenebene exportieren |
| Leere Markierung fällt in der Vorschau nicht auf | Alpha und sichtbarer Strich | Auf Kontrastfarbe öffnen; das Skript lehnt vollständig transparente Dateien ab |
| Falsches Objekt verändert | Ausrichtung und mehrdeutiger Kreis | Ebenen gemeinsam prüfen, ein Ziel isolieren, Original behalten |
| Roter Kreis erscheint im Ergebnis | Zusammengeführte Eingabe oder unklare Anweisung | Original separat senden und das Entfernen der Markierung verlangen |
| Fehler nach Übernahme eines Maskenbeispiels | Widersprüchliche Felder | mask und prompt_rewriter aus der Markup-Anfrage entfernen |
| Modell nicht gefunden oder Zugriff verweigert | Exakte Modell-ID und Antworttext | Verfügbarkeit und Zugangsdaten prüfen, keine zufälligen IDs durchprobieren |
| Erfolgreiche Antwort ohne brauchbares PNG | Fehlerinhalt und erwartete Bilddaten | JSON vor dem Dekodieren prüfen und zur Diagnose aufbewahren |
| Andere Objekte oder Etiketten verändern sich | Vergleich in voller Auflösung | Unzulässige Ausgabe verwerfen, eine Anweisung ändern oder mit Originalebenen montieren |
| Timeout oder Rate-Limit | Antwortstatus und Kontolimits | Vor Wiederholung prüfen, ob der Auftrag abgeschlossen wurde; weitere Aufrufe können Kosten verursachen |
Bei Ausgabeformaten statt lokalen Bearbeitungen helfen der Image-2.6-GIF-Leitfaden und der SVG-Ablauf (Englisch). Das sind andere Ergebnisse mit eigenen Endpunktgrenzen und Prüfungen. Informationen zu Zugang und Abrechnung liefert die Image-2.6-API-Übersicht (Englisch). Die Token-Beobachtungen oben sind kein fester Preis pro Bearbeitung.

