国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
通俗易懂!十分鐘搞懂 Stable Diffusion 的基礎(chǔ)概念

今天給大家介紹下 Stable Diffusion 的一些基礎(chǔ)概念。

所謂磨刀不誤砍柴工,只有把刀磨鋒利了,砍起柴來才能得心應(yīng)手,才能順利的砍到所需的柴火。砍柴如此,平常做事情也是這樣,我們要做好一件事,首先就要打好基礎(chǔ),找出核心的方面,搞懂相關(guān)原理,理清楚其中的利害關(guān)系,然后才能加以利用,進而得到滿意的結(jié)果。

我是6月份開始接觸 Stable Diffusion 的,當時參加了一個社區(qū),有老師專門教AI繪畫,然后我就按照教程一步一步的做,最后出圖的時候特別有成就感,那個感覺就像掌控了整個世界,也有點類似于剛拿到汽車駕照的感覺。

但是,跟著別人做的時候很順利,按照自己的想法繪圖時就遇到很多問題,經(jīng)常搞很久都不能得到滿意的結(jié)果,各種參數(shù)調(diào)來調(diào)去,一遍遍的生成,花費很多的時間,也拿不到想要的結(jié)果,如果電腦有感情,可能都要崩潰了。

后來我意識到,不能再這樣搞下去了,這樣搞下去成不了專家(哈哈)。我之所以很難拿到結(jié)果,是因為我對 Stable Diffusion 的認識太簡單太膚淺,很多參數(shù)都是一知半解,很多時候都是按照自己想當然的方法各種亂試,沒有抓住要領(lǐng),沒有搞懂原理,這樣就很難用好這個工具,我操之過急了。

然后我開始詳細了解 Stable Diffusion 的各種概念,盡量去理解相關(guān)的原理,去查詢各個參數(shù)的作用,然后再去實踐,遇到搞不清楚的地方,再去搜索查詢,如此反復(fù),終于搞明白了一些事情,也能生成一些想要的圖片了。因為我這些認識也是從別人那里學(xué)來的,本著人人為我,我為人人的精神,我也把自己學(xué)到的一些東西分享出來。

本文就和大家分享一下我了解到的一些 Stable Diffusion 的基礎(chǔ)概念,相關(guān)說明在保持基本正確的情況下會盡量通俗易懂,希望能幫助到身處困惑中的同學(xué)。

模型

理解模型這個詞需要一點初中數(shù)學(xué)知識,可以把每個模型看成一個數(shù)學(xué)函數(shù):y=f(x),輸入?yún)?shù) x,得到返回值 y。只不過這個函數(shù)可能特別復(fù)雜,里邊會有很多的子函數(shù),這些子函數(shù)通過各種規(guī)則進行連接。

在使用 Stable Diffusion 生成圖片時,我們會遇到很多的模型,最基礎(chǔ)的就是 Stable Diffusion 大模型,比如Anything、realisticVision等等,對于此類模型,我們可以簡單的認為模型的參數(shù)就是提示詞、圖片尺寸、提示詞引導(dǎo)系數(shù)、隨機數(shù)種子等等,返回值就是圖片數(shù)據(jù)。

除了大模型,平常使用較多的還有 Lora 模型、嵌入式模型。Lora 模型是一種微調(diào)模型,可以用來生成某種特色圖片,比如一些機甲、插畫風(fēng)格的模型。嵌入式模型通常使用單個輸入代表一組數(shù)據(jù),從而可以節(jié)省一些配置,比如常用的負面提示詞模型  EasyNegative。

除了 Stable Diffusion 自身支持的模型,很多插件也需要模型才能正常運行,比如ADetailer,就需要下載修臉、修手的模型。

模型文件的后綴名有很多種,比如常用的 Stable Diffusion 大模型文件名后綴一般是 .safetensors 和 .ckpt,.safetensors 文件比 .ckpt 文件更安全和快速,有這個的時候推薦用這個。還有一些模型的后綴名是 .pt、.pth、.onnx等等,它們一般由不同的機器學(xué)習(xí)框架訓(xùn)練而來,或者是包含的信息格式存在差異。

Stable Diffusion

Stable Diffusion 是一種很先進的生成技術(shù),集算法與模型為一身,2002年8月由 Stability AI 開源。Stable Diffusion 有時候會被簡稱為SD。

先來認識下這兩個單詞:

  • Diffusion 本意指的是分子從高濃度區(qū)域向低濃度區(qū)域的轉(zhuǎn)移過程。Stable Diffusion 有兩種擴散,前向擴散和后向擴散。

    • 前向擴散就是向清晰的圖片不斷中增加噪音,讓它變模糊,變成一張噪音圖。這種噪音的分布需要符合自然圖像的統(tǒng)計特性,使得圖像的特征數(shù)據(jù)分布的更加廣泛和均勻,從而能夠增加生成圖片的變化和多樣性,更接近真實圖像。

    • 后向擴散描述的是從噪聲圖到清晰圖的轉(zhuǎn)化過程。隨著擴散步驟的增加,噪聲逐漸被去除,圖像逐漸清晰。去噪就是去除不應(yīng)該出現(xiàn)在畫面中的像素點。

  • Stable 是穩(wěn)定的意思,無論輸入的文本提示詞如何,經(jīng)過訓(xùn)練的模型都可以穩(wěn)定地生成符合文本提示詞的圖像,而且這些圖像的質(zhì)量通常是穩(wěn)定的,不會出現(xiàn)明顯的波動。

下面再介紹下 Stable Diffusion 的基本原理,分成兩個方面:訓(xùn)練和生成。其核心就是在一個特殊的潛在空間中擴散。

潛在空間:Stable Diffusion 訓(xùn)練和生成圖片并不是基于圖片像素空間,而是在一個潛在空間中進行,這個潛在空間的維度比圖片像素的維度要低很多,比如一個尺寸為 768*512 的圖像,其像素維度為 768*512=393216,而 Stable Diffusion 模型的潛在空間維度通常在 768 維左右,可見潛在空間顯著降低了對算力和顯卡性能的要求,訓(xùn)練和生成圖片的速度更快。

訓(xùn)練:指的是使用帶有文本描述的圖片構(gòu)建生成模型的過程。

  • 訓(xùn)練程序首先將文本描述通過一個編碼器轉(zhuǎn)換為潛在空間中的向量,文本描述向量的每一個維度都代表了文本描述的一個特征或者屬性,例如顏色、形狀、大小等。同時訓(xùn)練程序也會將原始圖像轉(zhuǎn)換到潛在空間中。

  • 然后使用上面提到的“前向擴散”方法基于文本描述向量逐步生成噪聲圖像;

  • 然后使用上面提到的“后向擴散”方法去除這個噪聲圖像中噪聲,盡量恢復(fù)到原始圖像的向量表示;

  • 將得到的圖片向量表示與原始圖片的向量表示進行比對,計算損失值,然后調(diào)整模型的參數(shù),以盡可能地減小損失。

這個過程重復(fù)多次,直到損失值無法再降低或者可降低的幅度非常??;同時文本描述轉(zhuǎn)換的向量還會通過學(xué)習(xí)不斷接近原始圖片的信息。最終得到一個相對高質(zhì)量的模型。

向量:就是具有大小和方向的量,比如加速度。向量還可以用來表示一組數(shù)值,例如圖像的像素值、文本的單詞頻率等,使用向量可以方便地對數(shù)據(jù)進行操作和計算,比如通過計算兩個文本向量之間的夾角得到它們的相似度。

生成:指的是模型使用者使用文本提示詞+模型生成圖片的過程。

生成時還是需要先將文本提示詞轉(zhuǎn)換為潛在空間中的向量。

然后使用“前向擴散”方法基于這個向量生成符合向量語義的噪聲圖像。

然后使用“后向擴散”方法去除這個噪聲圖像中的噪聲,最終得到清晰的圖片。

Stable Diffusion WebUI

一個最流行的開源 Stable Diffusion 整合程序,用戶安裝后可以直接通過 Web 頁面使用 Stable Diffusion。

Stable Diffusion WebUI 的核心功能是 文生圖 和 圖生圖,這兩個功能也就是 Stable Diffusion 的核心能力。

Stable Diffusion WebUI 的其它功能,比如ControlNet、高清放大、模型訓(xùn)練等等都是其它第三方開發(fā)的,有的已經(jīng)內(nèi)置到 WebUI 中,隨著 WebUI 的發(fā)布而發(fā)布,有的還需要用戶手動安裝。

除了Stable Diffusion WebUI,還有一些使用量比較大的整合程序:SD.Next、ComfyUI 等。

大模型

這里說的是 Stable Diffusion 大模型,有時也稱為主模型、基礎(chǔ)模型。Stability AI 官方發(fā)布了一個基礎(chǔ)模型,但是因為比較通用,兼顧的方面比較多,特點不足,所以大家一般很少使用。比如有的人喜歡二次元、有的人喜歡真實、有的人喜歡3D,用官方模型出圖的效果不是最優(yōu)的,所以很多組織或者個人就專門訓(xùn)練某方面的模型,并發(fā)布到社區(qū)給大家使用。

同時因為大模型的訓(xùn)練成本很高,所以基本上沒人會重頭開始,這些模型一般基于 Stability AI 發(fā)布的官方模型二次訓(xùn)練而來。訓(xùn)練方法常見的有DreamBooth,DreamBooth模型可以將目標對象與新場景結(jié)合,生成創(chuàng)意新圖片;訓(xùn)練這種模型可以只需要少量的目標對象的圖片,也能達到較好的效果。

因為大模型訓(xùn)練時使用了大量的圖片,累積了比較多的數(shù)據(jù),所以模型文件很大,通常都在2G-7G。

對于 Stable Diffusion WebUI,大模型的安裝默認目錄是:<stable-diffusion-webui>\models\Stable-diffusion ,不過這個目錄是可以通過啟動參數(shù)更改的,注意確認你自己的大模型目錄。

VAE模型

上面提到 Stable Diffusion 生成圖片時會在一個潛在空間中進行處理,圖片數(shù)據(jù)和潛在空間數(shù)據(jù)的轉(zhuǎn)換就是由VAE模型處理的。VAE模型在這個轉(zhuǎn)換過程中能夠?qū)W習(xí)到一些圖像特征的處理方式,使得生成的圖像顏色更加鮮艷、細節(jié)更加銳利,可以用來解決圖片發(fā)灰模糊的問題。

很多大模型會自帶VAE模型,這時候我們就不需要再給它搭配一個VAE,當然也有不自帶的,這時就需要搭配一個,在 Stable Diffusion WebUi 中可以無腦選擇“自動識別”。

在秋葉整合包中提供了四個選項,如下圖所示,我一般都選“自動識別”,除了 vae-ft-mse-840000-ema 比較通用,animevae 是專門優(yōu)化二次元圖片的。一般這兩個VAE模型就夠了。

對于 Stable Diffusion WebUI,Vae 模型的安裝默認目錄是:<stable-diffusion-webui>\models\Vae ,注意替換 <stable-diffusion-webui> 為你自己的安裝目錄。不過這個目錄是可以通過啟動參數(shù)更改的,注意確認你自己的 Lora 目錄。

Lora模型

這是一種基于大模型的風(fēng)格模型,也就是說它不能單獨使用,必須配合一個大模型才行。比如我們畫小姐姐的時候,可以用一些Lora模型來控制人物的服裝、頭飾;生成機械四肢的時候,可以用一些Lora模型來強化肢體上覆蓋的機甲樣式;畫風(fēng)景圖的時候,可以用一些Lora模型來控制繪畫的風(fēng)格。

這種模型訓(xùn)練成本不高,往往只需要幾十張圖片就可以訓(xùn)練得到,比較方便普通用戶試玩。

與 Lora 模型作用和使用方式類似的還有一種超網(wǎng)絡(luò)模型,不過效果上較 Lora 模型差,社區(qū)中很少這種模型。

對于 Stable Diffusion WebUI,Lora 模型的安裝默認目錄是:<stable-diffusion-webui>\models\Lora ,初始狀態(tài)下里邊是空的,注意替換 <stable-diffusion-webui> 為你自己的安裝目錄。不過這個目錄是可以通過啟動參數(shù)更改的,注意確認你自己的 Lora 目錄。

提示詞

對圖像的描述,也就是想畫一幅什么樣的畫。比如我上邊使用的:a girl,但是這個提示詞過于簡單,AI雖然畫出了一個女孩,但是他不知道你腦子里的女孩長什么樣子,如果要畫的更符合你的需求,你還要告訴他更多細節(jié)才好,比如女孩的頭發(fā)是什么顏色、穿著什么衣服、站著還是坐著、在戶外還是室內(nèi)等等。

提示詞在AI繪畫中特別重要,一個常見的編寫套路是:風(fēng)格、主體、細節(jié)。風(fēng)格就是圖片是照片、水墨畫,還是白描;主體就是你想畫什么,比如1個女孩、1棵樹、或者1條狗子;細節(jié)就是你的主體長什么樣子,是長發(fā)還是短發(fā),黑色頭發(fā)還是粉色頭發(fā),眼睛是藍色還是黃色等等。

另外我們還可以使用一些質(zhì)量提示詞提升圖片的質(zhì)量,比如: masterpiece、best quality、ultra-detailed、8K等,不過這對于新版的SDXL這些提示詞沒什么意義了,SDXL會努力做到最好;還有就是可以使用權(quán)重數(shù)字強化或弱化某個提示詞對生成圖片的影響,比如: red hair:1.31 ,這可以強化輸出照片中頭發(fā)顏色為紅色的概率。

在 Stable Diffusion 中文本提示詞會被轉(zhuǎn)換為潛在空間中的向量,然后參考這個向量生成噪聲圖像,然后再對噪聲圖像進行采樣去噪處理,逐步生成清晰的圖像。

反向提示詞

不想在圖片中出現(xiàn)的東西,比如樹、桌子、6根手指、缺胳膊斷腿等等,在上邊的示例中我使用了“EasyNegative”,這是一個嵌入式模型的代號,可以認為它代表了一些常見的反向提示詞,使用它就不用一個個輸入了,且只使用一個提示詞的數(shù)量額度。

提示詞引導(dǎo)系數(shù)

在 Stable Diffusion 中,提示詞引導(dǎo)系數(shù)實際上影響的是噪聲圖像,通過調(diào)整該參數(shù),可以改變噪聲圖像與原始文本的相關(guān)性。這個參數(shù)的值越小生成圖像越自由,越大則更注重文本信息的影響。

采樣器和采樣步數(shù)

采樣就是去除噪音。在上面介紹 Stable Diffusion 時,提到過“反向擴散”這個概念,采樣器就是在反向擴散時去噪用的算法程序。

Stable Diffusion WebUI 中默認已經(jīng)集成了很多采樣器,比如:Euler a、DPM++、DDIM和Restart等等,它們在圖像生成的效果和速度上存在一定的差異。比如:

Euler a:默認選中的就是這個,是最簡單、最快的采樣器,以較少的步數(shù)可以產(chǎn)生很大的多樣性,不同的步數(shù)可能有不同的結(jié)果。但是,當步數(shù)過高時(超過30步),圖像的質(zhì)量可能不會有所提高。

DPM++:在圖像的質(zhì)量上表現(xiàn)不錯,但相較于其他采樣器,其耗時可能會相應(yīng)增加。

隨機數(shù)種子

隨機數(shù)種子是AI繪畫的魅力之一。在其它參數(shù)都相同的情況下,只要隨機數(shù)不同,每次生成就會產(chǎn)生有些差異的圖片,創(chuàng)意幾乎無窮無盡;反過來使用相同的隨機數(shù)則可以生成完全相同的圖片,這也是很多人都對收集 Stable Diffusion 生圖參數(shù)樂此不疲的原因。-1 代表每次使用不同的隨機數(shù)。

在Stable Diffusion內(nèi)部,隨機數(shù)種子會影響潛在空間中的噪聲圖像。當其他參數(shù)完全相同時,相同的隨機數(shù)種子將會生成相同的噪聲圖像,從而生成相同的像素圖像。


OK,以上就是本文的主要內(nèi)容,介紹了 Stable Diffusion 的一些基礎(chǔ)概念。如果有感覺沒講清楚的地方,歡迎留言溝通;因能力有限,以上有些說法可能不準確或者存在錯誤,如有問題還望指正。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
超詳細!AI 繪畫神器 Stable Diffusion 基礎(chǔ)教程
非常詳細!6000字詳解AI繪畫文生圖干貨、技巧,教程、學(xué)習(xí)分享
AI繪畫,讓你一步邁入高手行列,讓圖片有高級感
AI 繪畫Stable Diffusion 研究(三)sd模型種類介紹及安裝使用詳解
「AI科普」Stable Diffusion顯存不夠用的拯救者插件
樹莓派上運行 Stable Diffusion,260MB 的 RAM「hold」住 10 億參數(shù)大模型
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服