Ein Getränk, ein kleiner Laden
Lade ein echtes Kaffee-/Teefoto hoch → erhalte eine hübsche, liebevoll gestaltete isometrische Marken-Ladenillustration sowie ein hochauflösendes Vergleichsbild (Originalfoto vs. Illustration).
Kernphilosophie (nur ein Satz) : Behalte die charakteristischen Merkmale des Originalgetränks bei und entwerfe seine architektonische Funktion neu. Es geht nicht darum, „einen ähnlichen Becher zu malen“, sondern darum, „dem Getränk auf dem Foto Fenster, Treppen und kleine Angestellte zu geben“.
So sieht das Endergebnis aus
Am Beispiel des grünen GridCoffee-Bechers: Der grüne Becherkörper wird zum zweistöckigen Ladenhauptgebäude, der cremefarbene Deckel zur Dachterrasse, das weiße Rechteck-Logo bleibt originalgetreu an der Wand; der Becherkörper bekommt Rundbogenfenster und gestreifte Markisen, auf der rechten Seite gibt es eine Holztreppe und Grünpflanzen, vor der Tür stehen ein Maskottchen, kleine Tische und Stühle und ein A-Schild; das gesamte Gebäude ruht auf einer diagonalen Steinplattform; oben steht der runde, fette Titel Grid Coffee / Americano / Yunnan · Giupo Estate vor einem minzgrünen Hintergrund mit weißen Wolken.
Der Stil ist eine 2D-Vektorillustration wie in Adobe Illustrator, keine mit Blender gerenderte 3D-Szene.
Workflow (wird automatisch ausgeführt, keine schrittweise Bestätigung)
Standardmäßig lädt der Benutzer ein Getränkefoto hoch, oft mit zusätzlichen Angaben wie Markenname, Getränkename, Kaffeebohnen-Herkunft oder Kooperationen. Führe die folgenden sechs Schritte in einem Durchgang aus.
Schritt 0 · Bildaufnahme und Vorverarbeitung
PY="$HOME/.workbuddy/binaries/python/envs/default/Scripts/python.exe"
[ -x "$PY" ] || PY="$(command -v python || command -v python3)"
SK="$HOME/.workbuddy/skills/cup-shop-illustration/scripts/imgtool.py"
OUT="<aktuelles Arbeitsverzeichnis>/out/cup-shop-illustration"
mkdir -p "$OUT"
"$PY" "$SK" prepare "<vom Benutzer hochgeladener absoluter Pfad des Fotos>" --out "$OUT/photo_clean.jpg"
preparevereinheitlicht die EXIF-Ausrichtung, konvertiert in sRGB, entfernt Alpha-Kanal, begrenzt die lange Seite auf ≤2048 und gibt eine Informationskarte aus (Breite, Höhe, Ausrichtung, Helligkeit, Hauptfarbe). Die Ausrichtung in der Karte bestimmt das spätere Seitenverhältnis der Leinwand und die Ausrichtung des Vergleichsbilds.- Es ändert nur das Dateiformat und die Größe, nicht den Bildinhalt. Verwende
photo_clean.jpgfür die Bildgenerierung; für die Zusammenstellung wird das Originalfoto des Benutzers verwendet. - Falls der Benutzer ein Format wie HEIC/webp hochlädt, das Pillow nicht lesen kann, konvertiere es zuerst mit Systemwerkzeugen in PNG, führe dann diesen Schritt aus und informiere den Benutzer ehrlich.
Schritt 1 · Foto betrachten, „Erkennungskarte“ ausfüllen
Verwende visuelle Fähigkeiten, um das Originalfoto direkt zu betrachten (keine Code-Kantenextraktion, keine vorherige Liniengenerierung). Lies die Felder der Erkennungskarte gemäß references/diagnose.md einzeln aus:
| Feld | Inhalt |
|---|---|
| Markenname | Logo/Text auf dem Becher, möglichst englischer Name oder Pinyin |
| Getränkename | Vom Etikett, Kassenbon oder Benutzerangaben |
| Becherform | To-Go-Pappbecher / durchsichtiger Plastikbecher / Dose / Glasflasche, sowie Breite-Höhe-Verhältnis |
| Obere Struktur | Flachdeckel, Trinköffnung, Strohhalm, Milchschaum, Sahne, Deckelfolie |
| Hauptfarbe / Nebenfarben | Mit der Hauptfarben-Karte aus Schritt 0 kreuzvalidieren |
| Logo und Text | Form, Position, Farbe (Beispiel: weißer, hohler, rechteckiger Rahmen + auf der unteren Hälfte des Bechers GridCoffee) |
| Zutaten / Dekoration | Kaffeebohnen, Perlen, Früchte, Keksbrösel, Schichten, Eiswürfel |
| Herkunft / Kooperation | Yunnan Estate, Kooperations-IP usw., können als Umgebungselemente integriert werden |
Regel: Informationen, die der Benutzer explizit angibt, haben Vorrang; was auf dem Foto nicht lesbar ist, wird nicht erfunden; verwende stattdessen Beschreibungen wie „vorhandener Text/Grafik auf dem Becher“. Ändere nicht eigenmächtig die Marke, Farben oder Becherform.
Schritt 2 · Prompt zusammenstellen
Lies references/prompt-master.md und fülle die Hauptvorlage mit den 6 Slots aus (Marke / Getränk / Zusatzangaben / Seitenverhältnis der Leinwand abhängig von der Originalausrichtung / Hintergrundfarbe / Besondere Elemente), um einen vollständigen Prompt zu erhalten.
- Die Stilklauseln, negativen Begriffe und Kompositionseinschränkungen der Vorlage bleiben originalgetreu erhalten und werden nicht gekürzt.
- Der endgültige Prompt ist ein zentrales Asset und wird bei der Auslieferung im Originaltext mitgeliefert (Benutzer möchten ihn oft wiederverwenden).
- Falls chinesische Schriftzeichen benötigt werden, bleibt der Haupttitel auf Englisch; Chinesisch wird nur als dekoratives Element in kleinen Mengen verwendet; KI-generiertes Chinesisch neigt zu Zeichensalat – siehe die Behandlung in
diagnose.md.
Schritt 3 · Bildgenerierung (ImageGen Bild-zu-Bild)
⚠️ Vor dem Aufruf muss in der Antwort deutlich gemacht werden: Ein einzelner ImageGen-Durchlauf verbraucht etwa 5–10 Credits. Erst deklarieren, dann aufrufen.
| Parameter | Wert |
|---|---|
prompt | Der vollständige Prompt aus Schritt 2 |
image1 | Absoluter Pfad von photo_clean.jpg aus Schritt 0 (echtes Foto, keine reine Text-zu-Bild-Generierung) |
size | Bei Hochformat: 1024x1365 (3:4, am 2026-11-08 getestet und funktioniert, tatsächliche Rückgabe 1024x1360; falls abgelehnt, Downgrade auf 1024x1280); Querformat: 1536x1024; Quadratisch: 1024x1024 |
quality | high |
input_fidelity | medium (Standard, siehe Parameteranpassung unten) |
output_dir | $OUT |
footnote | "" (Wasserzeichen auf Werkzeugseite kann entfernt werden; die Plattform fügt jedoch weiterhin „AI-generiert WORKBUDDY“ ein, entfernt in Schritt 5 mit cleanwm) |
style | Nicht ausfüllen, der Stil wird durch den Prompt festgelegt |
Anpassung input_fidelity: medium erhält sowohl Becherform/Logo/Farben als auch eine Neukomposition. Wenn das Ergebnis zu sehr wie „ein anderer Becher“ aussieht → auf high erhöhen; wenn das Bild wie eine Foto-Nachahmung wirkt und die Perspektive nicht 45° beträgt → auf low reduzieren.
Generiert wird eine eigenständige, vollständige Illustration. Die KI darf niemals direkt ein Links-Rechts-Vergleichsbild zeichnen, und die Illustration darf nicht aus einem Vergleichsbild ausgeschnitten werden.
Schritt 4 · Selbstprüfung
Vergleiche die Ergebnisse nacheinander mit den neun Prüfpunkten aus references/diagnose.md. Drei Pflichtprüfungen:
- Kann man auf den ersten Blick das Getränk auf dem Foto erkennen? (Becherform, Hauptfarbe, Logo-Position)
- Ist es reine 2D mit dicken schwarzen Konturen + flachen Farben? (Auftreten von Plastik-Optik / Farbverläufen / weichen Schatten = Fehlschlag)
- Sind das Gebäude, die Treppen, die Figuren, die Plattform und der Titel vollständig im Bild? (Abschneiden = Fehlschlag)
Bei Nichtbestehen → nur den entsprechenden Teil des Prompts ändern, maximal einmal wiederholen; falls immer noch nicht bestanden, ehrlich ausliefern und mögliche Anpassungsrichtungen erläutern, nicht so tun, als wäre es erfolgreich gewesen.
Schritt 5 · Wasserzeichen entfernen + Code-Zusammenfügen
Die Plattform fügt am rechten unteren Rand der Illustration den weißen Text „AI-generiert WORKBUDDY“ ein, der nicht durch footnote: "" entfernt werden kann. Entferne ihn zuerst rückstandslos, dann füge zusammen:
"$PY" "$SK" cleanwm "$OUT/<Illustrationsdateiname>.png" --out "$OUT/<Originalname>_illustration.png"
"$PY" "$SK" compose \
--photo "<absoluter Pfad zum Originalfoto des Benutzers>" \
--art "$OUT/<Originalname>_illustration.png" \
--out "$OUT/<Originalname>_compare.png"
cleanwmverwendet standardmäßig denselective-Modus, der nur die weißlichen Wasserzeichenpixel in Richtung der Hintergrundfarbe zieht. Er schneidet nicht die Plattform ab und beschädigt nicht grüne Blätter. Getestet: keine Rückstände, keine Nähte. Standard--threshold 160; falls sich am rechten unteren Rand helle Dekorationen wie weiße Wolken oder cremefarbene Steinplatten befinden, auf190–210erhöhen, um Fehler zu vermeiden. Bei ungewöhnlicher Wasserzeichenposition kann--box "x0,y0,x1,y1"angepasst werden, oder auf--mode fillwechseln (löscht Dekorationen im Bereich, mit Vorsicht verwenden).composewählt automatisch basierend auf der Originalausrichtung: Hochformat/Quadratisch → Originalfoto links, Illustration rechts; Querformat → Originalfoto oben, Illustration unten. Kann auch mit--layout side|stackerzwungen werden.- Die Pixel der Illustration dienen als Basis, die Illustration wird nicht skaliert, das Originalfoto wird proportional angepasst, um ausgerichtet zu werden; weißer Abstand 24px, Außenabstand 24px; Größenunterschiede werden durch Leerraum ausgeglichen.
- Es wird nicht zugeschnitten, gestreckt oder der Inhalt des Originalfotos verändert. Ausgabe als hochauflösendes PNG.
- Falls
cleanwmfehlschlägt, als Backup:trim <Illustration> --bottom 0.06 --mode pad; dies schneidet jedoch den unteren Bildbereich ab und könnte die Plattform abschneiden, daher nur im äußersten Notfall verwenden.
Schritt 6 · Auslieferung
Verwende present_files, um zuerst das Vergleichsbild und dann die eigenständige Illustration zu präsentieren (beide müssen gezeigt werden). Füge in der Antwort drei Schlussfolgerungen hinzu: die erkannte Marke/das erkannte Getränk, das Seitenverhältnis der Leinwand und den input_fidelity-Wert, die Pfade der beiden Dateien; füge außerdem den vollständigen Prompt im Originaltext bei.
Harte Regeln (Verstoß = Fehlschlag)
- Das echte Foto muss als
image1für Bild-zu-Bild-Generierung verwendet werden; es darf nicht nur aufgrund von Text ein Becher neu gezeichnet werden. - Die Zusammenstellung muss mit dem vom Benutzer hochgeladenen Originalfoto erfolgen; es darf nicht ein von der KI neu gezeichnetes „Foto“ als Original ausgegeben werden.
- Die ursprüngliche Becherform, Hauptfarbe, Logo und Verpackungsmerkmale müssen erhalten bleiben; neu gestaltet wird die architektonische Funktion, nicht die Verpackung.
- Der Aufnahmewinkel des Originalfotos darf nicht mechanisch kopiert werden; es muss eine sinnvolle räumliche Ableitung (45° Schrägsicht isometrisch) vorgenommen werden.
- Zuerst die eigenständige vollständige Illustration generieren, dann zusammenfügen; es ist verboten, die Illustration aus einem Vergleichsbild auszuschneiden.
- Nur 2D-Vektorillustrationen; 3D-Rendering / fotorealistisch / Aquarell / Farbverläufe / komplexe Lichteffekte sind streng verboten.
- Keine Code-Kantenextraktion oder Liniengenerierung; das Bildmodell sollte das Originalbild direkt verstehen.
- Vor der Bildgenerierung muss der Kreditverbrauch angekündigt werden; keine schrittweise Bestätigung einholen, alles in einem Durchlauf erledigen.
Anpassbare Optionen
| Was geändert werden soll | Wo ändern |
|---|---|
| Hintergrundfarbe | Prompt: „Helles, weiches Mintgrün“ → durch eine markenabgestimmte Farbe ersetzen |
| Titeltext | Slot für Haupt-/Untertitel; bei Unsicherheit nur den Markennamen verwenden |
| Herkunfts-/Kooperationselemente | Slot „Besondere Elemente“, z. B. Kaffeezweige, Estate A-Schild, Kooperationsfigur |
| Anzahl Maskottchen / Treppe Rutsche | Abschnitt „Architekturdesign“ im Prompt – Liste der Einrichtungen |
| Seitenverhältnis der Leinwand | size in Schritt 3, sowie die Seitenverhältnis-Klausel im Prompt anpassen |
| Eingabetreue | input_fidelity auf low / medium / high setzen |
| Abstand und Hintergrundfarbe beim Zusammenfügen | compose --gap --pad --bg |
Ressourcen
| Datei | Verwendung |
|---|---|
references/prompt-master.md | Hauptdatei: Vollständige, wiederverwendbare Prompt-Vorlage, Slot-Tabelle, drei ausgefüllte Beispiele, Liste negativer Begriffe |
references/diagnose.md | Foto-Erkennungskarte, neun Selbstprüfpunkte, Tabelle zur Fehlerbehebung, Behandlung chinesischer Schriftzeichen |
scripts/imgtool.py | Fünf lokale Unterbefehle: prepare / cleanwm / compose / trim / sheet |
README.md | Chinesische Installations- und Nutzungsanleitung |