Comfyui基礎(chǔ)節(jié)點(diǎn)教程詳解
發(fā)布時間:2025-01-18 14:10 [ 我要自學(xué)網(wǎng)原創(chuàng) ] 發(fā)布人: 快樂小女 閱讀: 2281

.底層邏輯

Comfyui里面,我們可以看到有著密密麻麻的各種各樣的節(jié)點(diǎn),但這些都是插件類的節(jié)點(diǎn),很多都是極少用到的,但這里面有5類基礎(chǔ)節(jié)點(diǎn),幾乎在每個工作流里面都是一定會用上的,下面我們來一一了解一下。


1.文生圖

大部分的工作流都是從基礎(chǔ)的文生圖開始擴(kuò)展


2.圖生圖

圖生圖與文生圖基本一樣,文生圖是給潛空間圖一個空的latent,用來定義生成圖片的大小。而圖生圖則是需要給到潛空間一張圖片做參考,而圖片無法直接給到潛空間,這時就需要在中間加個VAE編碼了。


Latent -> 經(jīng)過 KSampler 采樣器進(jìn)行去噪后的潛空間圖像

降噪 -> 需要注意的是圖生圖時,在這里降噪可以理解為重繪幅度


3.局部重繪

談到局部重繪就會牽扯到遮罩,也就是通過制作遮罩的方式對圖像的特點(diǎn)部分進(jìn)行處理。制作遮罩的工具有maskeditor(遮罩編輯器),或者segment anything(語義分割)等等!


3.1系統(tǒng)自帶局部重繪

comfyUI自帶的兩個重繪節(jié)點(diǎn)Laten噪波遮罩Set Latent Noise Mask,VAE內(nèi)補(bǔ)編碼器VAE Encode (for inpainting)有一個很大的缺點(diǎn)就是他們都會對全圖進(jìn)行重繪。無論蒙版多小,重繪時間和資源占用是根據(jù)整個圖片的大小來重繪的。導(dǎo)致對高分辨率圖片細(xì)節(jié)重繪時又慢又容易爆顯存。

在輸入圖片上右鍵選擇在遮罩編輯器打開Open in MakeEditor,將要重繪的面部給完全涂抹,之后進(jìn)行保存。


VAE內(nèi)補(bǔ)編碼器


Laten噪波遮罩+VAE,邊緣和原圖很難融合,不自然

comfyUI自帶的兩個圖生圖節(jié)點(diǎn)都不能很好的做到。

3.2 segment anything + BrushNet

【語義分割+局部重繪】

3.3 Impact Pack

那么換個思路,我們可以將高分辨率圖片的蒙版周圍區(qū)域剪切一部分,比如剪切一個512*512的區(qū)域來重繪,這樣既快,而且圖片和周圍的區(qū)域融合的也比較自然。

我們使用的是Impact Pack 插件(這插件功能很多也很強(qiáng)大,后面會出個專欄介紹他的所有功能,有興趣可以持續(xù)關(guān)注)

.采樣類


1.K采樣器

該節(jié)點(diǎn)專門用于逐步減少潛在空間圖像中的噪聲,改善圖像質(zhì)量和清晰度。

把它拿出來第一個說就說明這個節(jié)點(diǎn)的重要性,所有的工作流都是圍繞著它來進(jìn)行擴(kuò)散的。


先從簡單的開始

輸入:

模型model -> 接收來自大模型的數(shù)據(jù)流 positive -> 接收經(jīng)過 clip 編碼后的正向提示詞的條件信息(CONDITIONING) negative -> 接收經(jīng)過 clip 編碼后的反向提示詞的條件信息(CONDITIONING) latent_image -> 接收潛空間圖像信息


輸入

輸出:

LATENT -> 經(jīng)過 KSampler 采樣器進(jìn)行去噪后的潛空間圖像

參數(shù):

隨機(jī)種seed -> 在去除圖像噪聲過程中使用的隨機(jī)數(shù)種子。種子數(shù)有限,影響噪聲生成的結(jié)果。
運(yùn)行后操作-> 指定種子生成后的控制方式。固定fixed 代表固定種子,保持不變;增加 increment 代表每次增加 1;減少decrement代表每次減少 1 ;隨機(jī)randomize代表隨機(jī)選擇種子 。
步數(shù)steps-> 對潛在空間圖像進(jìn)行去噪的步數(shù)。步數(shù)越多,去除噪聲的效果可能越顯著。
CFG -> 提示詞引導(dǎo)系數(shù),表示提示詞對最終結(jié)果的影響程度。過高的值可能會產(chǎn)生不良影響。
采樣器-> 選擇的采樣器名稱,不同的采樣器可以影響生成圖像的效果,大家可以根據(jù)需求進(jìn)行選擇和實(shí)驗(yàn)。
調(diào)度器scheduler -> 選擇的調(diào)度器名稱,影響生成過程中的采樣和控制策略,推薦配置可提供更好的結(jié)果。
降噪denoise-> 去噪或重繪的幅度,數(shù)值越大,圖像變化和影響越顯著。在高清修復(fù)等任務(wù)中,通常使用較小的值以保持圖像細(xì)節(jié)和質(zhì)量。

樣器+調(diào)度器參數(shù):

我們之前最熟悉的采樣器,有euler、dpmpp_2m,包括后來的ddpm、ddim、uni_pc和ipndm等。


采樣器:

采樣器有點(diǎn)多,看起來有點(diǎn)蒙逼。其實(shí)可以把它分成三類:

01歐拉:euler和heun02dpm :所有以dpm開頭03 其它類

對比測試

建立一個XY圖表,橫坐標(biāo)是步數(shù),從第5步開始,間隔四步,總共8個數(shù)值;縱坐標(biāo)是上面介紹的各種采樣器。

從上圖中不難發(fā)現(xiàn)如下規(guī)律:

·名字以a或sde結(jié)尾的,確實(shí)不會收斂,每一步選代圖像都會發(fā)生變化 ·euler,heun和ddim采樣器在第9步就已經(jīng)出圖,對于簡單圖來說,確實(shí)是又好又快。 ·dpmpp_2m和uni_pc采樣器在第14步出圖,其中dpmpp_2m在第18步開始收斂,效果很好 ·不要被dpm adaptive采樣器騙了,雖然第5步就已經(jīng)收斂,但是該采樣器速度特別慢。后續(xù)我又單獨(dú)進(jìn)行了測試,實(shí)際第2步就已經(jīng)收斂,但是速度很慢。 ·Ims采樣器表現(xiàn)最差。

如何選擇采樣器?

沒有最好的采樣器,只有最適合的采樣器。

如果想要穩(wěn)定可重現(xiàn)的圖像,請避免選擇任何祖先采樣器(名字以a或sde結(jié)尾的) 如果想要簡單的圖,建議選擇euler,heun(可以減少步驟以節(jié)省時間) 如果想快速生成質(zhì)量不錯的圖片,建議選擇dpmpp_2m(20-30步)、uni_pc(15-25步) 如果想要每次生成不一樣的圖像,可以選擇不收斂的祖先采樣器(名字里面帶a或sde)

調(diào)度器則就相對來得簡單些:

最常見的normal似乎已不太適用于FLUX生態(tài) 以往最常用的karras也在sgm_uniform、simpleddim_uniform和beta出現(xiàn)后被慢慢淡化。 其中,ddim_uniform這個調(diào)度器,會隨著采樣的步數(shù),構(gòu)圖畫面會發(fā)生一定的變化,因?yàn)樗悬c(diǎn)像高級的調(diào)度器dpm一樣,是不收斂的,則出圖的多樣性隨機(jī)性會隨著步數(shù)增加更強(qiáng),變化更多。 對于調(diào)度器exponential,則較多用于擴(kuò)圖放大等情況。

國外有位大佬對Flux各種采樣器和調(diào)度器進(jìn)行組合測試出最適合的采樣模式。表格中的綠色標(biāo)記表示該組合可用,紅色標(biāo)記表示不可用。


推薦的采樣器和調(diào)度器組合:

euler + normal:適用于快速生成圖像,但細(xì)節(jié)可能不夠精細(xì)。(生成時間20s)
heunpp2 + ddim_uniform:適用于生成細(xì)節(jié)豐富的圖像,但速度較慢。(生成時間54s)
uni_pc +beta:適用于平衡速度和質(zhì)量,是大多數(shù)情況下的推薦選擇。(生成時間20s)
DPM2+ SIMPLE是我最近比較喜歡的組合,能夠提供非常好的圖片精細(xì)度。(生成時間37s)
DEIS+DDIM_UNIFORM是新出現(xiàn)的組合,非常好的把握光影明暗。(生成時間20s)

.加載器

ComfyUI基礎(chǔ)節(jié)點(diǎn)中的加載器類別,加載器是工作流中各個模塊的生產(chǎn)力源頭,可以提供不同模型的加載。下面詳細(xì)介紹了trap point加載器、VA1加載器、LUA加載器、control加載器、clip視覺加載器、n clip trip point加載器、格萊根加載器和超網(wǎng)絡(luò)加載器的作用和使用方法。通過加載器可以方便地選擇不同的模型進(jìn)行加載和應(yīng)用,提高工作流的效率和靈活性。

所謂的加載器主要的作用就是給工作流提供各種不同模型的加載,大部分的工作流都是以大模型的加載作為起始輸入源來進(jìn)行展開的。

一個工作流里可能存在多個加載器,例如對圖片進(jìn)行放大,需要用到放大模型加載器。連接controlnet時需要controlnet加載器。

1.Checkpoint加載器

【加載大模型】


主要使用(簡易)版

節(jié)點(diǎn)功能:該節(jié)點(diǎn)用來加載checkpoint大模型,常用的大模型有sd1.0,sd1.5,sd2.0,sdxl等等。

輸入:

擴(kuò)散模型的路徑 **假如配置好了路徑文件,模型可自行選擇**

輸出:

MODEL -> 該模型用于對潛空間圖片進(jìn)行去噪
CLIP -> 返回與加載的檢查點(diǎn)關(guān)聯(lián)的CLIP模型。
VAE -> 返回與加載的檢查點(diǎn)關(guān)聯(lián)的VAE模型。用于對潛在空間的圖像進(jìn)行編碼和解碼。

注意:StableDIffusion大模型(checkpoint)內(nèi)置有CLIP和VAE模型。

2.VAE加載器

大模型都自帶有VAE,如果你不想使用大模型的VAE時,就可以新建一個VAE加載器


3.lora加載器

【預(yù)訓(xùn)練模型微調(diào)調(diào)整】


模型強(qiáng)度 -> 確定應(yīng)用于模型的LoRA調(diào)整的強(qiáng)度。更高的強(qiáng)度意味著更顯著的調(diào)整,可能導(dǎo)致模型行為的顯著變化,潛在地提高特定任務(wù)的性能。

CLIP強(qiáng)度 -> 與模型強(qiáng)度類似,更高的強(qiáng)度導(dǎo)致更明顯的變化,影響CLIP模型處理數(shù)據(jù)的方式。


串聯(lián)在大模型后面


多個lora時串聯(lián)下去就行

當(dāng)需要多個lora時,串聯(lián)下去比較麻煩,這時我們就可以使用lora堆節(jié)點(diǎn)


4.GLIGEN 加載器

【指定特定區(qū)域生成特定的內(nèi)容】注意不適用于SXDL,請使用SD1.5模型


GLIGEN 模型文件放在 ComfyUI/models/gligen 目錄中。

下載鏈接:

https://huggingface.co/comfyanonymous/GLIGEN_pruned_safetensors/tree/main?huggingface.co/comfyanonymous/GLIGEN_pruned_safetensors/tree/main

文本框 GLIGEN 模型允許您指定圖像中多個對象的位置和大小。要正確使用它,您應(yīng)該正常編寫提示,然后使用 GLIGEN 文本框應(yīng)用節(jié)點(diǎn)指定提示中某些對象/概念在圖像中的位置。


本地部署版也有了,可視化操控,更加方便。只能期待comfyUI版的插件能盡快出可視華化操作吧。


本地部署界面

5.放大模型加載器

【圖片放大時加載模型】


常見的放大算法有下面幾個:

·/None:單純的放大,不做任何優(yōu)化處理。

·Lanczos:使用加權(quán)平均插值方法,利用原始圖像自身的像素信息,增加圖像的細(xì)節(jié),從而提高圖像的分辨率。傳統(tǒng)的純數(shù)學(xué)算法,效果一般。

·Nearest:使用簡單的插值方法,基于最近鄰像素的值進(jìn)行插值,從而增加圖像的細(xì)節(jié)和提高分辨率。傳統(tǒng)的純數(shù)學(xué)算法,效果一般,還不如 Lanczos 的效果好。

·LDSR:基于深度學(xué)習(xí),通過使用輕量級的網(wǎng)絡(luò)結(jié)構(gòu)和殘差學(xué)習(xí),實(shí)現(xiàn)較高的超分性能和計(jì)算效率。適用于各種需要快速且準(zhǔn)確地提高圖像分辨率的應(yīng)用場景,如實(shí)時視頻處理、移動設(shè)備圖像處理等。

·ESRGAN:全稱Enhanced Super-Resolution Generative Adversarial Networks (增強(qiáng)超分生成對抗網(wǎng)絡(luò)),基于深度學(xué)習(xí)的超分辨率算法。增加了很多看上去很真實(shí)的紋理,但是有時可能會過度擬合,出現(xiàn)不好的效果。

·4x-UltraSharp:基于ESRGAN做了優(yōu)化,比較適合處理真人。

·ESRGAN_4x:Real ESRGAN,完全使用純合成數(shù)據(jù)來盡量貼近真實(shí)數(shù)據(jù)進(jìn)行訓(xùn)練。騰訊貢獻(xiàn)。

·R-ESRGAN 4x+:基于Real ESRGAN的優(yōu)化模型,適合放大真實(shí)風(fēng)格的圖片,常用

·R-ESRGAN 4x+ Anime6B:基于Real ESRGAN的優(yōu)化模型,適合放大動漫風(fēng)格的圖片,常用。這個模型是專供動畫使用的, 用在真人視頻會有很重的涂抹感

·ScuNET GAN:基于深度學(xué)習(xí),使用生成對抗網(wǎng)絡(luò)(GAN)進(jìn)行訓(xùn)練。主要用在提高圖像的視覺效果和感知質(zhì)量,例如在圖像增強(qiáng)、視頻處理等。

·ScuNET PSNR:基于深度學(xué)習(xí),使用均方誤差(PSNR)進(jìn)行訓(xùn)練。主要用在提高圖像的客觀質(zhì)量和準(zhǔn)確性,例如在醫(yī)學(xué)圖像分析、監(jiān)控視頻處理等。

·SwinIR_4x:使用Swin Transformer思想,基于自注意力機(jī)制Transformer結(jié)構(gòu),適合各種圖像的超分,比較通用。


04) Upscaler2】 用來避免 Upscaler1 過度處理的問題,比如磨皮太嚴(yán)重?梢允褂靡恍┢胀ǚ椒ㄋ惴ǎ热 Lanczos。Upscaler2 【可見度】是指圖片放大時使用 Upscaler2 算法進(jìn)行處理的比例,為0時完全不使用 Upscaler2,為1時只使用 Upscaler2。

算法模型下載:

算法模型下載?huggingface.co/uwg/upscaler/tree/main/ESRGAN

放到文件夾\models\upscale_models\

3)算法組合建議

放大算法1 與 放大算法2 的設(shè)置建議

想出圖銳度優(yōu)先:

·放大算法1選擇「4x-UltraSharp」、「R-ESGAN 4x+」

·放大算法2選擇「Lanczos」作為細(xì)節(jié)補(bǔ)充

想出圖細(xì)節(jié)優(yōu)先:

·放大算法1選擇「Lanczos」

·放大算法2選擇「Lanczos」作為銳度補(bǔ)充

4x-UltraSharp,BSRGAN,R-ESRGAN 4x+這3種算法放大效果還行,銳化有點(diǎn)嚴(yán)重,可以搭配放大算法2綜和一下,效果應(yīng)該會更好。

測試下來LDSR(效果認(rèn)為是最好的,但非常非常耗時,慎重考慮),R-ESRGAN 4x+ Anime6B(網(wǎng)上建議動漫圖片使用)

6.風(fēng)格模型加載器

【風(fēng)格遷移】


串聯(lián)在正向提示詞中間

看了很多大佬的視頻,發(fā)現(xiàn)單獨(dú)去學(xué)某一個節(jié)點(diǎn)的方法確實(shí)不可取,大家盡量不在踩坑了。還是去工作流中去學(xué)習(xí)與使用吧。但是了解一下各節(jié)點(diǎn)的作用還是有必要的。

四、條件類

加在模型與K采樣器中間,充當(dāng)指揮官,下達(dá)命令,設(shè)定生成條件。


.插件類

1.segment anything

【扣圖、蒙版】

一天42小時:Comfyui實(shí)用工作流教程—產(chǎn)品背景隨意換8 贊同 · 0 評論文章

segment anything語義分割,在這里的作用就是摳圖使用?雌饋聿皇茄凼,像不像WebUI里的Inpaint anything的閹割版。


G-DinoSAM語義分割輸入:SAM模型、G-Dino模型和加載圖像;


提示詞 ->要選擇對象的名稱

閾值->提高識別的精度

輸出遮罩—>給到BrushNet的遮罩節(jié)點(diǎn)

缺點(diǎn):有些復(fù)雜的圖片對象比較難用關(guān)鍵詞去選取到對的對象,控制性不強(qiáng)。(人物識別沒有問題)這情況我們可以選擇使用PS扣圖后當(dāng)蒙版使用。

1.1.Inspyrenet-Rembg

【用于背景去除】

直接搜索并安裝,與其他方法相比,rembg 質(zhì)量更佳(快來嘗試一下。

可以將一批圖像作為輸入

針對圖像批處理進(jìn)行了優(yōu)化,成為最快的 rembg 節(jié)點(diǎn)(完美適用于視頻幀)

輸出圖像和相應(yīng)的蒙版


2.BrushNet

【局部重繪】

ComfyUI BrushNet 是一種先進(jìn)的圖像重繪模型。使用 BrushNet 進(jìn)行修復(fù)的準(zhǔn)確率和質(zhì)量遠(yuǎn)高于 ComfyUI 中的默認(rèn)重繪。


3.Controlnet

安裝那些不說了,大同小異,我是共享WebUI的。下載地址和各個模型的作用什么的可以參考我的另一篇專門講controlnet的文章:

一天42小時:ControlNet插件詳情教程【詳細(xì)入門介紹一篇就夠】26 贊同 · 2 評論文章

這里就講下它的工作流,個人也是比較奇怪,玩WebUI時,經(jīng)常會用controlnet,怎么感覺ComfyUI的工作流中反而用得不多呢?

4.Anything Everywhere

【省略連線】

Anything Everywhere節(jié)點(diǎn)有一個輸入,最初標(biāo)記為“任何內(nèi)容”。將任何內(nèi)容連接到它(直接 - 而不是通過重新路由),輸入名稱將更改為與輸入類型匹配。斷開連接后,它將恢復(fù)為“任何內(nèi)容”。

當(dāng)您運(yùn)行提示時,工作流中任何位置與該類型匹配的任何未連接的輸入都將表現(xiàn)得好像連接到相同的輸入一樣。


實(shí)際上只是三個Anything Everywhere節(jié)點(diǎn)打包在一起。專為 Checkpoint Loader 的輸出而設(shè)計(jì)。


3


2

將鼠標(biāo)放在 Anything Everywhere 節(jié)點(diǎn)上,便會顯示出隱藏的連接線;如果沒有顯示連線,則可以在設(shè)置中更改顯示連線。


文章評論
0 條評論 按熱度排序 按時間排序 /350
添加表情
遵守中華人民共和國的各項(xiàng)道德法規(guī),
承擔(dān)因您的行為而導(dǎo)致的法律責(zé)任,
本站有權(quán)保留或刪除有爭議評論。
參與本評論即表明您已經(jīng)閱讀并接受
上述條款。
V
特惠充值
聯(lián)系客服
APP下載
官方微信
返回頂部
分類選擇:
電腦辦公 平面設(shè)計(jì) 室內(nèi)設(shè)計(jì) 室外設(shè)計(jì) 機(jī)械設(shè)計(jì) 工業(yè)自動化 影視動畫 程序開發(fā) 網(wǎng)頁設(shè)計(jì) 會計(jì)課程 興趣成長 AIGC