png as workflow!圖片拉進去!Workflow直接套用,ComfyUI 快速取得工作流!不存 json 就存 png!

png as workflow!圖片拉進去!Workflow直接套用,ComfyUI 快速取得工作流!不存 json 就存 png

小夥伴們在找 ComfyUI 的工作流都上哪找?CivitaiOpenArtComfy WorkflowsGithub?ComfyUI 的工作流雖以 JSON 檔為主,但其實抓 PNG 圖檔到網頁上就能取得工作流+參數+prompt!

png as workflow
貓與蟲的遊記生活FBBanner

歡迎來 FB 粉絲專頁YouTube 抓住我們最新的蹤跡!

圖片拉進來,直接取得工作流節點、模型與 prompt 資訊

 小夥伴們在使用 Stable Diffusion 時,是用 WebUI (A1111)、還是用 ComfyUI 呢?ComfyUI 節點式的操作還是很容易快速複製跟調整,相當非常方便~

 神奇的是,由 ComfyUI 生出來的圖像本身,可以成為 流程的容器,也就是生出來的 .png 圖檔,實際上嵌入了可供還原的 Workflow metadata。

 所以你只需要將 .png 圖拉進 ComfyUI 介面 (Web),就可以還原 Workflow 節點內容,這就包含了各種參數,像是用的模型是什麼、參數數值是多少、正向/負向提示詞是什麼,等於你可以直接基於這張圖當時的基礎去重新生成與魔改!

額外的好處

 過去如果是透過 .json 來存 workflow,就要透過檔名去文字描述這個工作流是在幹嘛的,現在就多了個選擇,可以直接用圖片來看到 這個工作流可以生出什麼內容 + 原本的檔名描述~

Workflow 是怎麼藏在 PNG 的?

 ComfyUI 在輸出圖片時,除了輸出圖像本身,也會將整個生成流程序列化為一段 JSON 結構,並嵌入於 PNG 檔案metadata 區塊裡,這就是工作流參數的所在,其實小夥伴們只要有用文字編輯器開啟過 工作流的 json檔就會知道,裡頭就是工作流的文字描述。

 所以工作流與參數就得已被還原~

技術上,ComfyUI 採用的是 PNG 格式中的 tEXtzTXt chunk,這是一種可以嵌入自訂文字資料的欄位,ComfyUI 預設將把 workflow 存入名為 "workflow" 的欄位中,並儲存在 .png 圖片裡。

當你把 .png 圖片拉進 ComfyUI 前端介面 (Web) 時,網頁會自動解析這個欄位的資料,也就懷園了整個節點的配置。

不透過 ComfyUI Web 前端來看這段工作流資料?

對於開發者或進階使用者,也可以直接透過 Python 程式碼手動讀取這段 metadata:

from PIL import Image
img = Image.open("example.png")
print(img.info["workflow"])

 這段 "workflow" 資訊實際上是一段 JSON 字串,可直接解析並重新送入 ComfyUI 中,你也可以將這段 JSON 存出來,做版本控制或與團隊共享。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *