Une boisson, une boutique
Téléchargez une photo de café/thé → obtenez une illustration isométrique 2D élégante et détaillée de boutique thématique de la marque, plus un comparatif haute résolution « photo originale vs illustration ».
Principe fondamental (une seule phrase) : Conserver les attributs identifiants de la boisson d'origine, mais repenser sa fonction architecturale. Il ne s'agit pas de « dessiner une tasse approximative », mais de « faire en sorte que la boisson sur la photo ait des fenêtres, un escalier et un petit employé ».
À quoi ressemble le résultat final
Prenons l'exemple du gobelet vert GridCoffee : le corps vert devient le corps principal de la boutique sur deux étages, le couvercle blanc crème devient la plateforme du toit, le logo blanc carré reste sur le mur ; le corps du gobelet s'ouvre avec une fenêtre cintrée et un auvent rayé, à droite se trouvent un escalier en bois et de la verdure, devant il y a une mascotte, des petites tables et chaises, et un panneau en forme de A. L'ensemble repose sur un socle en pierre oblique. En haut se trouve le titre en gras arrondi Grid Coffee / Americano / Yunnan · Giupo Estate, avec un fond vert menthe clair et des nuages blancs.
Le style est une illustration vectorielle 2D réalisée avec Adobe Illustrator, pas une scène 3D rendue avec Blender.
Workflow (exécuté automatiquement, sans demander de confirmation progressive)
Par défaut, l'utilisateur télécharge une photo de boisson, souvent avec des informations supplémentaires comme le nom de la marque, le nom de la boisson, l'origine des grains de café, une collaboration, etc. Suivez les six étapes ci-dessous en une seule fois.
Étape 0 · Réception et prétraitement de l'image
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="<espace de travail actuel>/out/cup-shop-illustration"
mkdir -p "$OUT"
"$PY" "$SK" prepare "<chemin absolu de la photo téléchargée>" --out "$OUT/photo_clean.jpg"
prepareuniformise l'orientation EXIF, convertit en sRGB, supprime l'alpha, redimensionne le côté long à ≤2048, et imprime une fiche d'information (largeur, hauteur, orientation, luminosité, couleur principale). L'orientation dans la fiche détermine le rapport de la toile et la direction de l'assemblage ultérieur.- Il ne modifie que le format et la taille du fichier, ne change pas le contenu de l'image. Utilisez
photo_clean.jpgpour ImageGen ; pour l'assemblage, utilisez toujours la photo originale téléchargée par l'utilisateur. - Si l'utilisateur télécharge un format que Pillow ne peut pas lire (HEIC, webp, etc.), convertissez-le d'abord en PNG à l'aide d'un outil système, puis suivez cette étape, et informez-en honnêtement.
Étape 1 · Observer la photo, remplir la « fiche d'identification »
Utilisez la capacité visuelle pour regarder directement la photo originale (n'utilisez pas de code pour extraire les contours, ne générez pas de line art à l'avance). Lisez la fiche d'identification dans references/diagnose.md champ par champ :
| Champ | Contenu |
|---|---|
| Nom de la marque | Logo/texte sur le gobelet, donnez de préférence le nom anglais ou le pinyin |
| Nom de la boisson | Lisez sur l'étiquette du gobelet, le ticket de caisse ou les instructions de l'utilisateur |
| Type de gobelet | Gobelet en papier à emporter / gobelet en plastique transparent / canette / bouteille en verre, et rapport hauteur/largeur |
| Structure du dessus | Couvercle plat, bec verseur, paille, mousse, crème, film de scellage |
| Couleur principale / secondaire | Vérifiez les informations de la carte des couleurs de l'étape 0 |
| Logo et texte | Forme, position, couleur (exemple : cadre blanc creux + GridCoffee en bas du gobelet) |
| Ingrédients / garnitures | Grains de café, perles, fruits, morceaux de biscuits, stratification, glaçons |
| Origine / collaboration | Domaine du Yunnan, IP de collaboration, etc. Peut être transformé en élément environnemental |
Règle : Les informations données explicitement par l'utilisateur sont prioritaires ; si vous ne pouvez pas les lire sur la photo, n'inventez rien, utilisez des descriptions comme « texte/graphique original sur le gobelet » ; ne changez pas arbitrairement la marque, les couleurs ou le type de gobelet.
Étape 2 · Assembler le prompt
Lisez references/prompt-master.md, utilisez le modèle principal pour remplir les 6 emplacements (marque / boisson / instructions supplémentaires / rapport de toile déterminé par l'orientation de l'image originale / couleur de fond / éléments caractéristiques), et obtenez un prompt complet.
- Les clauses de style, les mots négatifs et les contraintes de composition dans le modèle sont conservés tels quels, ne les simplifiez pas.
- Le prompt final généré est un actif central, joignez le texte original lors de la livraison (les utilisateurs veulent souvent le réutiliser).
- Lorsqu'un panneau en chinois est nécessaire, le titre principal reste en anglais ; le chinois n'est utilisé que comme petite décoration ; le chinois pour l'IA est sujet aux erreurs de caractères, voir la méthode de gestion dans
diagnose.md.
Étape 3 · Génération de l'image (ImageGen, image à image)
⚠️ Avant d'appeler, informez clairement dans la réponse : une seule image via ImageGen consomme environ 5 à 10 crédits. Déclarez d'abord, puis appelez.
| Paramètre | Valeur |
|---|---|
prompt | Le prompt complet de l'étape 2 |
image1 | Chemin absolu de photo_clean.jpg de l'étape 0 (photo réelle, interdiction de génération uniquement par texte) |
size | Pour image originale portrait 1024x1365 (3:4, testé le 2026-11-08, fonctionne, retourne en réalité 1024x1360 ; si rejeté, descendre à 1024x1280) ; paysage 1536x1024 ; carré 1024x1024 |
quality | high |
input_fidelity | medium (par défaut, voir réglage ci-dessous) |
output_dir | $OUT |
footnote | "" (le filigrane côté outil peut être supprimé ; la plateforme superposera toujours « AI généré WORKBUDDY », supprimez-le à l'étape 5 avec cleanwm) |
style | Ne pas remplir, le style est verrouillé par le prompt |
Réglage de input_fidelity : medium préserve la forme du gobelet/logo/couleurs tout en permettant une recomposition. Si le résultat devient « un autre gobelet » → passez à high ; si l'image ressemble à une copie de la photo, l'angle n'est pas devenu 45° → passez à low.
Générez une illustration complète et indépendante, ne demandez jamais à l'IA de dessiner directement un comparatif gauche/droite, et ne recadrez pas l'illustration à partir d'une image comparative.
Étape 4 · Auto-vérification
Suivez les neuf points d'auto-vérification dans references/diagnose.md. Trois points obligatoires :
- Peut-on reconnaître immédiatement la boisson sur la photo ? (forme du gobelet, couleur principale, position du logo)
- Est-ce du 2D pur avec contours noirs épais et aplats de couleurs ? (apparition de texture plastique / dégradés / ombres douces = échec)
- Le bâtiment, les escaliers, les personnages, le socle et le titre sont-ils tous entièrement dans le cadre ? (coupure = échec)
Inacceptable → modifiez uniquement la partie correspondante du prompt, réessayez au maximum une fois ; si toujours inacceptable, livrez honnêtement et expliquez les directions d'ajustement possibles, ne faites pas semblant de réussir.
Étape 5 · Suppression du filigrane + Assemblage par code
La plateforme superpose de force le texte blanc « AI généré WORKBUDDY » en bas à droite de l'illustration, footnote: "" ne l'enlève pas. Supprimez-le d'abord sans laisser de trace, puis assemblez :
"$PY" "$SK" cleanwm "$OUT/<nom de l'illustration>.png" --out "$OUT/<nom d'origine>_illustration.png"
"$PY" "$SK" compose \
--photo "<chemin absolu de la photo originale téléchargée>" \
--art "$OUT/<nom d'origine>_illustration.png" \
--out "$OUT/<nom d'origine>_compare.png"
cleanwmen modeselectivepar défaut ne déplace que les pixels de filigrane trop blancs vers la couleur de fond, ne coupe pas le socle, n'endommage pas les feuilles vertes, testé sans résidu ni jointure.--threshold 160par défaut ; si des décorations claires (nuages blancs, briques blanches, etc.) sont présentes en bas à droite, augmentez à190-210pour éviter les dégâts. Si la position du filigrane est particulière, ajustez--box "x0,y0,x1,y1", ou passez en--mode fill(efface les décorations dans la zone, à utiliser avec précaution).composechoisit automatiquement en fonction de l'orientation de l'image originale : portrait/carré → photo à gauche, illustration à droite ; paysage → photo en haut, illustration en bas. Vous pouvez aussi forcer avec--layout side|stack.- Basé sur les pixels originaux de l'illustration, l'illustration n'est pas redimensionnée, la photo originale est redimensionnée proportionnellement pour s'aligner ; espacement blanc de 24px, marge extérieure de 24px, les différences de proportions sont absorbées par l'espace blanc.
- Pas de recadrage, pas d'étirement, pas de modification du contenu de la photo originale, sortie PNG haute résolution.
- En cas d'échec de
cleanwm, utiliseztrim <illustration> --bottom 0.06 --mode padcomme solution de secours ; mais cela coupera le bas de l'image, pouvant couper le socle, à utiliser uniquement en dernier recours.
Étape 6 · Livraison
Utilisez present_files pour montrer d'abord l'image de comparaison, puis l'illustration seule (les deux doivent être fournies). Dans la réponse, donnez trois lignes de conclusions : la marque/boisson identifiée, le rapport de toile et input_fidelity, les chemins des deux fichiers ; puis joignez le texte original du prompt complet.
Règles strictes (violation = échec)
- Vous devez utiliser une photo réelle comme
image1pour la génération image à image, vous ne pouvez pas redessiner un gobelet uniquement à partir de texte. - L'assemblage doit utiliser la photo originale téléchargée par l'utilisateur, vous ne pouvez pas utiliser une « photo » redessinée par l'IA.
- Conservez la forme originale du gobelet, les couleurs principales, le logo et les caractéristiques de l'emballage ; ce qui est redessiné, c'est la fonction architecturale, pas l'emballage.
- Ne reproduisez pas mécaniquement les angles de prise de vue de la photo originale ; faites une extrapolation spatiale 3D raisonnable (vue isométrique à 45° au-dessus).
- Générez d'abord une illustration complète et indépendante, puis assemblez ; interdiction de recadrer à partir d'une image comparative.
- Faites uniquement de l'illustration vectorielle 2D, interdiction stricte du rendu 3D / photoréalisme / aquarelle / dégradés / ombres complexes.
- N'utilisez pas de code pour extraire les contours ou générer du line art, laissez le modèle d'image comprendre directement l'image originale.
- Avant de générer l'image, vous devez informer de la consommation de crédits ; ne demandez pas de confirmation progressive, exécutez tout en une seule fois.
Paramètres ajustables
| Ce que vous voulez changer | Où le changer |
|---|---|
| Couleur de fond | Prompt « vert menthe clair et doux » → remplacer par une couleur coordonnée à la marque |
| Texte du titre | Emplacement du titre principal/secondaire ; si incertain, n'écrivez que le nom de la marque |
| Élément d'origine / collaboration | Emplacement « éléments caractéristiques », comme des branches de caféier, panneau A du domaine, petit personnage de collaboration |
| Nombre de mascottes / escalier-toboggan | Liste des installations dans la section « conception architecturale » du prompt |
| Rapport de toile | size de l'étape 3, et modifiez la clause de toile dans le prompt |
| Fidélité | input_fidelity low / medium / high |
| Espacement et couleur de fond de l'assemblage | compose --gap --pad --bg |
Ressources
| Fichier | Utilisation |
|---|---|
references/prompt-master.md | Principal : modèle de prompt complet et réutilisable, tableau des emplacements, trois exemples remplis, tableau des mots négatifs |
references/diagnose.md | Fiche d'identification photo, neuf points d'auto-vérification, tableau des correctifs d'échec, traitement du texte chinois |
scripts/imgtool.py | Cinq sous-commandes locales : prepare / cleanwm / compose / trim / sheet |
README.md | Instructions d'installation et d'utilisation en chinois |