Community影像github.com

iithink88/cup-shop-illustration

上傳一杯咖啡、奶茶或任飲品照片,自動識別品牌、杯型、配色與配料,用圖生圖轉換成2D等軸測微縮門店插畫,再產出「原圖 vs 插畫」高清對比圖,交付兩張PNG。

cup-shop-illustration 是什麼?

此技能專為將真實飲品照片轉換為精緻的2D等軸測微縮門店插畫而設計,特別適用於咖啡、奶茶等飲料。它會自動分析照片中的品牌、杯型、配色與配料,並透過圖生圖技術,生成一張保留了原飲品特徵(如杯身Logo、主色)但賦予建築功能(如窗戶、樓梯、小店員)的獨立插畫。最後,技能會撰寫程式碼,將原始照片與生成的插畫無裁切拼接成一張高清對比圖。此技能的核心價值在於提供一個完整、自動化的「照片→插畫→對比圖」工作流程,無需逐步確認。它支援Claude Code、Cursor等平台,並強調使用真實照片進行圖生圖,嚴格遵守2D矢量風格(粗黑描邊、純色平塗),禁止3D渲染或寫實風格。技能內建多項硬性規則與自檢機制,確保品牌一致性與高品質輸出,並會在生成前明確告知積分消耗。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/iithink88/cup-shop-illustration/tree/HEAD/cup-shop-illustration

Installed? Explore more 影像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

一杯飲料,一座小店

上傳一張真實的咖啡/奶茶照片 → 得到一張精緻可愛的品牌主題等軸測門店插畫,外加一張「原圖 vs 插畫」高清對比圖。

核心心法(只有一句):保留原始飲品的識別特徵,重新設計它的建築功能。 不是「畫一個差不多的杯子」,而是「讓照片裡那杯飲料,長出窗戶、樓梯和小店員」。

成品長什麼樣

以 GridCoffee 綠杯為例:綠色杯身變成兩層店鋪主體,米白色杯蓋變成屋頂平台,白色方框 logo 原樣留在牆上;杯身開拱形窗和 striped 遮陽篷,右側有木樓梯與綠植,門前有吉祥物、小桌椅和 A 字牌,整座建築落在斜向石磚地台上;頂部是 Grid Coffee / Americano / Yunnan · Giupo Estate 圓潤粗體標題,薄荷綠純色背景配白雲。

風格是 Adobe Illustrator 做的 2D 矢量插畫,不是 Blender 渲染的 3D 場景。

工作流(自動跑完,不逐步徵求確認)

用戶默認會上傳一張飲品照片,常附帶品牌名、飲品名、咖啡豆產地、聯名等補充說明。按下面六步一次做完。

Step 0 · 收圖與預處理

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="<目前工作區>/out/cup-shop-illustration"
mkdir -p "$OUT"

"$PY" "$SK" prepare "<用戶上傳的照片絕對路徑>" --out "$OUT/photo_clean.jpg"
  • prepare 統一 EXIF 方向、轉 sRGB、去 alpha、長邊 ≤2048,並列印資訊卡(寬高、方向、亮度、主色)。資訊卡裡的方向決定後續畫布比例與拼接方向。
  • 它只改檔案格式與尺寸,不改畫面內容。餵給 ImageGen 用 photo_clean.jpg;拼接時仍用用戶上傳的原始照片。
  • 若用戶上傳的是 HEIC / webp 等 Pillow 讀不了的格式,先用系統工具轉成 PNG 再走本步,並如實告知。

Step 1 · 觀察照片,填「識別卡」

用視覺能力直接看原始照片(不要用程式碼提取邊緣、不要預先生成線稿),按 references/diagnose.md 的識別卡逐項讀取:

欄位內容
品牌名杯身 logo / 文字,盡量給出英文名或拼音
飲品名從杯身標籤、小票或用戶說明讀取
杯型外帶紙杯 / 透明塑膠杯 / 易開罐 / 玻璃瓶,及寬高比例
頂部結構平蓋、飲用口、吸管、奶蓋、奶油、封膜
主色 / 輔助色用 Step 0 的主色資訊卡交叉驗證
logo 與文字形狀、位置、顏色(範例:白色空心方框 + 杯身下方 GridCoffee)
配料 / 裝飾咖啡豆、珍珠、水果、餅乾碎、分層、冰塊
產地 / 聯名雲南莊園、聯名 IP 等,可化作環境元素

規則:用戶明確給出的資訊優先;照片裡讀不出的一律不編造,改用「杯身原有的文字/圖形」這類描述;不要擅自換品牌、改配色、改杯型。

Step 2 · 組裝提示詞

讀 references/prompt-master.md,用其中的主模板填寫 6 個槽位(品牌 / 飲品 / 補充說明 / 原圖方向決定的畫布比例 / 背景色 / 特色元素),得到一條完整提示詞。

  • 模板裡的風格條款、負面詞、構圖約束原樣保留,不要精簡。
  • 生成的最終提示詞作為核心資產,在交付時原文附上(用戶常要複用)。
  • 需要中文字牌時,主標題仍用英文,中文只作小幅裝飾;AI 中文易亂碼,見 diagnose.md 的處理辦法。

Step 3 · 出圖(ImageGen 圖生圖)

⚠️ 呼叫前必須在回覆中明確告知:單次 ImageGen 約消耗 5–10 積分。 先聲明、後呼叫。

參數取值
promptStep 2 的完整提示詞
image1Step 0 的 photo_clean.jpg 絕對路徑(真實照片,禁止純文生圖)
size原圖豎版 1024x1365(3:4,2026-11-08 實測可用,實際返回 1024x1360;被拒則降級 1024x1280);橫版 1536x1024;方形 1024x1024
qualityhigh
input_fidelitymedium(預設,見下方調參)
output_dir$OUT
footnote""(工具側浮水印可去掉;平台仍會強制疊「AI生成 WORKBUDDY」,用 Step 5 的 cleanwm 清除)
style不填,風格由提示詞鎖定

input_fidelity 調參:medium 既保住杯型/logo/配色,又允許重新構圖。跑偏成「別的杯子」→ 升到 high;畫面像照片臨摹、視角沒變成 45° → 降到 low。

生成的是一張獨立完整的插畫,絕不能讓 AI 直接畫左右對比圖,也不能從對比圖裡裁出插畫。

Step 4 · 自檢

按 references/diagnose.md 的九條自檢逐項比對。三條必查:

  1. 一眼能認出是照片裡那杯飲料嗎?(杯型、主色、logo 位置)
  2. 是純 2D 粗黑描邊 + 純色平塗嗎?(出現塑膠質感 / 漸變 / 軟陰影 = 失敗)
  3. 建築、樓梯、人物、地台、標題都完整在畫面內嗎?(截斷 = 失敗)

不合格 → 只改對應那一段提示詞,最多重試一次;仍不合格就如實交付並說明可調方向,不要偽裝成功。

Step 5 · 去浮水印 + 程式碼拼接

平台會在插畫右下角強制疊「AI生成 WORKBUDDY」白字,footnote: "" 去不掉。先無痕清除,再拼接:

"$PY" "$SK" cleanwm "$OUT/<插畫檔案名稱>.png" --out "$OUT/<原名>_illustration.png"

"$PY" "$SK" compose \
  --photo "<用戶上傳的原始照片絕對路徑>" \
  --art "$OUT/<原名>_illustration.png" \
  --out "$OUT/<原名>_compare.png"
  • cleanwm 預設的 selective 模式只把偏白的浮水印像素拉向背景色,不裁地台、不誤抹綠葉,實測無殘留、無接縫。預設 --threshold 160;若右下角有白雲/米白石磚等淺色裝飾,調高到 190–210 避免誤傷。浮水印位置特殊時可調 --box "x0,y0,x1,y1",或改用 --mode fill(會抹掉框內裝飾,慎用)。
  • compose 按原圖方向自動選:豎版/方形 → 原圖在左、插畫在右;橫版 → 原圖在上、插畫在下。也可 --layout side|stack 強制。
  • 以插畫原始像素為基準,插畫不縮放,原圖等比縮放對齊;白色間隔 24px、外邊距 24px,比例差異用留白吸收。
  • 不裁切、不拉伸、不修改原照片內容,輸出高清 PNG。
  • cleanwm 失效時備用 trim <插畫> --bottom 0.06 --mode pad;但它會裁掉畫面底部,可能切到地台,只在萬不得已時用。

Step 6 · 交付

用 present_files 先展示拼接圖,再展示獨立插畫(兩張都要給)。回覆裡給三行結論:識別出的品牌/飲品、畫布比例與 input_fidelity、兩個檔案的路徑;再附完整提示詞原文。

硬規則(違反即失敗)

  1. 必須以真實照片作 image1 做圖生圖,不能只憑文字重畫一個杯子。
  2. 拼接必須用用戶上傳的原始照片,不能用 AI 重繪的「照片」冒充。
  3. 保留原杯型、主色、logo 與包裝特徵;重新設計的是建築功能,不是包裝。
  4. 不機械複製原照片的拍攝角度,要做合理的三維空間推演(45° 斜上方等軸測)。
  5. 先生成獨立完整插畫,再拼接;禁止從對比圖裁切。
  6. 只做 2D 矢量插畫,嚴禁 3D 渲染 / 寫實 / 水彩 / 漸變 / 複雜光影。
  7. 不用程式碼提取邊緣或生成線稿,讓圖像模型直接理解原圖。
  8. 出圖前必須告知積分消耗;不逐步徵求確認,一次跑完。

可調項

想改什麼改哪裡
背景色提示詞「明亮柔和的薄荷綠」→ 換成品牌協調色
標題文字主/副標題槽位;不確定就只寫品牌名
產地 / 聯名元素「特色元素」槽位,如咖啡樹枝、莊園 A 字牌、聯名小人
吉祥物數量 / 樓梯滑梯提示詞「建築設計」段的設施列表
畫布比例Step 3 的 size,同時改提示詞裡的畫布條款
保真度input_fidelity low / medium / high
拼接間隔與底色compose --gap --pad --bg

資源

檔案用途
references/prompt-master.md主用:完整可複用提示詞模板、槽位表、三套填好的範例、負面詞表
references/diagnose.md照片識別卡、九條自檢、失敗修法表、中文文字處理
scripts/imgtool.pyprepare / cleanwm / compose / trim / sheet 五個本地子命令
README.md中文安裝與使用說明

相關技能