{WebUI&comfyUI}∈Stable Diffuision,所以兩者關于ContrlNet的使用方法的核心思路不會變,變的只是comfyUI能夠讓用戶更直觀地看到,并且控制生圖的局部過程。
之前的webUI中涉及到ContrlNet部分知識:SD-細節控制-CSDN博客?
概括來說:?ControlNet中最常用的還是姿勢控制,線條約束以及深度控制
模型說明
SD1.5使用512*512的數據集進行訓練,SDXL使用1024*1024的數據集進行訓練。所以讓SD1.5直接生成1024*1024的圖片較為困難。
1.線稿上色
在加載ControlNet節點中有眾多模型,不同的模型的使用條件不一。
在基礎文生圖工作流間增加ControlNet節點,實現對圖像的控制。
1.1模型分類
簡單對吐司上該節點中具有的模型進行分類。
1. 基礎控制類型:(Canny-邊緣, Depth-深度圖, OpenPose-姿態, Scribble-涂鴉, Normal-法線圖, Seg-語義分割, hand_pose-手部關鍵點, Tile-分塊, brightness-亮度控制, qrcode-生成藝術二維碼等)
2. 模型架構/版本(SD15, SDXL, SD3, AnimateDiff, 等)
3. 特殊功能(Inpainting-修復, Illumination-光照控制 ,CoAdapter-多條件聯合控制,?IP-Adapter-用參考圖控制風格, InstantID-人臉身份保留等)
4. 風格適配(Anime-動漫, Realistic-真實等)
5. 多合一綜合模型(Union, Pro等)
控制類型 | 代表模型 | 用途 |
---|---|---|
邊緣檢測 | *canny*.safetensors ,?control_v1lp_sd15_canny.pth | 保留物體輪廓(如建筑設計/產品圖) |
深度圖 | *depth*.safetensors ,?control_v1lf1p_sd15_depth.pth | 空間關系控制(場景層次感/景深效果) |
姿態控制 | OpenPoseXL.safetensors ,?control_v1lp_sd15_openpose.pth | 人體姿勢生成(角色設計/動作捕捉) |
涂鴉控制 | *scribble*.safetensors ,?control_sd15_scribble.pth | 草圖轉精細圖(手繪概念設計) |
分塊處理 | *tile*.safetensors ,?control_v1lfle_sd15_tile.pth | 局部細節增強(高清紋理/無損放大) |
修復專用 | *inpaint*.safetensors ,?control_sd15_inpaint*.pth | 圖像修補(去水印/物體移除) |
風格適配 | ip-adapter*.pth ,?*anime*.safetensors | 風格遷移(照片轉動漫/藝術風格) |
二維碼藝術 | *qrcode*.safetensors | 創意二維碼生成 |
光照控制 | illumination*.safetensors | 光影效果調整(打光模擬/HDR效果) |
新手一開始看到眾多模型會很頭大,其實不必糾結這個,可以向d老師進行提問,從名稱對模型有初步的認識,基于此篩選掉一部分模型后,再直接上手使用該模型。
在使用模型時仍然需要前往模型作者主頁查看該模型作者關于模型的說明。
如lz當前使用的模型原作者就對采樣算法,采樣步數,正負面提示詞方面進行了說明。
1.2組合案例?
1. 真人轉插畫
控制圖:Canny邊緣
模型:`control_v1lp_sd15_canny.pth` + 動漫主模型
提示詞:`anime style, masterpiece`
2. 建筑設計
控制圖:深度圖
模型:`control_v1lf1p_sd15_depth.pth`
提示詞:`modern architecture, sunlight`
3. 虛擬換裝
控制圖:OpenPose姿勢圖
模型:`OpenPoseXL2.safetensors`
提示詞:`fashion photo, [服裝描述]`
4. 老照片修復
控制圖:涂鴉草圖 + Inpainting遮罩
模型:`control_sd15_inpaint_depth_hand_fp16.safetensors`
提示詞:`old photo, high detail, 4K`
5. 多ControlNet串聯: 姿勢(OpenPose) + 深度(Depth) + 風格(IP-Adapter) 同時控制。
6. Tile分塊控制:?用`TTPLANET_Controller_Tile`放大局部細節不改變構圖。
7. 動態視頻控制: AnimateDiff模型 + 運動控制CKPT生成連貫動畫。
模型命名中的`fp16`/`rank256`表示優化版本(顯存需求更低)。
1.3線稿獲取-lineart
利用Img2LineArt Assistant節點將圖片轉換為線稿。
輸入ControlNet中的圖片要求為黑底白邊,此處為考慮到多種情況同時使用了2個節點對圖片進行了處理,uu們可以根據需要適當保留一個line節點即可。
?原有畫面可能含有較多細節,精度設置得過高可能會導致線稿提取到的細節過多
?可以選擇用PS畫筆工具將背景進行涂抹。減少背景對畫面的干擾。
但仍然注意到畫面保留了較多細節。可以選擇適當降低details值,減少畫面細節。
下圖為其他值相同,details值不同得出的結果。
1.4圖片大小控制
通過獲取圖像尺寸節點得到原圖像的大小,將空Latent中轉換為輸入節點。
其實工作流的搭建并不是最難的,難的是不同類型之間的模型的相互匹配。同時需要具備處理異常畫面的思考能力。以及參考圖片大小和目標模型之間是否配適。這個過程需要不斷摸索。
lz一開始的參考圖為2000*2000px,這個尺寸的圖片如果用1.5的模型是完全無法生成的,于是將圖片尺寸改為512*512,但是提取的線稿不夠精細,生成的圖片會丟失過多細節,于是lz取消了原圖和生成圖片之間的尺寸關聯,用2000*2000的圖片進行線稿提取,用512*512的分辨率生成圖片。這之中還得不斷更換模型進行嘗試,以及調整數據。
最終勉強得到幾張能看的圖, 但生成的圖片精細度仍然不夠,且會把角色的耳羽和頭發混為一談。
?
結合使用高清放大節點對圖片進行二次處理:comfyUI-高清放大1-CSDN博客
同時基于角色特性,lz決定再加一個LoRA模型,平臺的LoRA效果也不是很好。。。
1.5軟邊緣-softedge
softedge一般用于風格轉繪,或者基于原圖的線條特征對畫面進行整體細節改變。
HED模糊線預處理器的功能和LineArtStandard藝術線預處理器類似。uu們可以嘗試一般性的人物角色,使用該方法對畫面人物進行風格上的轉化。
看樣子不太適合雞翅膀女孩。。。
更換圖像后生成效果
?
完整工作流:ControlNet中的softedge+lineart使用案例 | ComfyUI Workflow | 吐司 tusiart.com?
uu們可以將該功能和與自身的工作流結合?
功能性節點summary
以下節點可以在其他情況下進行復用
1.獲取圖像大小
2.圖像轉化為線稿
只有意志力堅強的人才能到達永生的彼岸。——來點雞湯8
以上end