stable diffusion 真人照片訓(xùn)練PT實(shí)操

以下文章用于介紹如何使用stable diffusion, 基于真人照片的pt文件制作
照片隨機(jī)抓取至網(wǎng)絡(luò)。原始照片舉例:


經(jīng)過訓(xùn)練后,由stabel diffusion 生成的照片舉例


以下基于深度學(xué)習(xí)的一般流程,介紹一下基于真人照片的pt批處理文件流程

1- 數(shù)據(jù)處理
首先是原始數(shù)據(jù)的獲得,一般通過網(wǎng)絡(luò)公開渠道都可以獲得原始的訓(xùn)練數(shù)據(jù)。
1.1 數(shù)據(jù)清洗
但是我們從網(wǎng)絡(luò)上獲得的大部分?jǐn)?shù)據(jù)都需要做一個初步的處理,比如對于過于花哨的背景,需要進(jìn)行摳像處理;過于模糊的照片或者本身已經(jīng)失真的照片需要剔除;部分照片如臉上有特效,頭發(fā)遮住一部分臉龐,身上衣服有大范圍的數(shù)字和字母、文字,紋身等等,最好予以剔除。
最后得到的初始照片大致如下:

1.2 數(shù)據(jù)預(yù)處理
首先在啟動stabel diffusion 之前,進(jìn)入VAE文件夾,將model.vae.pt文件改為1model.vae.pt,這一步很重要,VAE若自動加載,則訓(xùn)練必失敗。

隨后啟動stabel diffusion對于上述圖像進(jìn)行預(yù)處理。

設(shè)置反推提示詞如下

記得“保存設(shè)置”,切記?。?!

1.3 隨后進(jìn)入訓(xùn)練頁簽,對于圖像進(jìn)行預(yù)處理
輸入embedding的名字,這個也決定了這個pt的后續(xù)名字,方便記憶即可。
初始化文字越簡單越好,如果是人像輸入1girl即可;如果是畫風(fēng)訓(xùn)練則輸入畫師的名字即可,方便區(qū)分和記憶即可。
每個token的向量數(shù)是很重要的,一般與你的初始圖片數(shù)量有關(guān),如果是人像訓(xùn)練,一般設(shè)置數(shù)字為6-12, 如果是畫風(fēng)訓(xùn)練則一般10以上。
舉例我如果是20張照片,我設(shè)置為6;如果40張照片,我一般設(shè)置為8或者9;如果有100張照片,我一般設(shè)置為16.

點(diǎn)擊生成embedding文件,顯示成功生成pt文件

1.4 對于原始圖像進(jìn)行預(yù)處理
在stable diffusion程序文件夾內(nèi),創(chuàng)建一個train文件夾,在train文件夾下,輸入你這個人像訓(xùn)練或畫風(fēng)訓(xùn)練的embedding文件夾,在這個文件夾下,再創(chuàng)建一個old文件夾。

將你前期經(jīng)過摳像的圖片存儲入上述創(chuàng)建的old文件夾

1.5 由SD進(jìn)行圖像的預(yù)處理
源目錄為上述創(chuàng)建的old目錄絕對路徑。
目標(biāo)目錄和上述目錄路徑相同,將最后的old改為new
如果是獨(dú)立顯存8G,則寬度高度保持默認(rèn)的512*512即可;如果是獨(dú)立顯存6G,則寬度高度改為384*384,不然容易爆顯存。
另外,即使你的初始照片為1024*768或其他比例,這里也建議保留原始的寬度高度512*512不要修改,不然生成的照片比例會很奇怪。
最下面的選項(xiàng)如圖片選擇即可。

后臺顯示對于初始文件進(jìn)行預(yù)處理

SD會自動創(chuàng)建new文件夾,并對于初始照片進(jìn)行處理



2 訓(xùn)練配置
進(jìn)入文生圖頁面,prompt輸入簡單內(nèi)容即可,一般將embedding名字放在最后,不要加太多的prompt,如1girl, realistic即可。

回到訓(xùn)練頁面
embedding選擇自己剛才創(chuàng)建的embedding名字
學(xué)習(xí)率保持默認(rèn)即可
數(shù)據(jù)集目錄,設(shè)置為之前的new文件夾,用預(yù)處理過的圖像作為數(shù)據(jù)集目錄
日志目錄為textual_inversion,如果是畫風(fēng)訓(xùn)練,則下方應(yīng)選擇為style_filewords,如果是人像訓(xùn)練,則下方應(yīng)選擇為subject_fileword。
寬度高度保持不變,依舊512*512
最大迭代步數(shù)由100000改為10000或20000
下面步數(shù)默認(rèn)500或者250都可以。

點(diǎn)擊“訓(xùn)練embedding”,開始訓(xùn)練模型

3 SD后臺開始訓(xùn)練embedding文件

4 查看訓(xùn)練結(jié)果
在textual_inversion文件夾下,會自動創(chuàng)建一個當(dāng)天日期的文件夾

在當(dāng)天日期文件夾下,會自動創(chuàng)建一個embedding名字的子文件夾

在images下面,會看到每隔500個結(jié)果,保存的照片
一般這時候照片會比較難看,但是如果只要還看的出來是原來的畫風(fēng)和人像,就可以不要打斷SD,讓他繼續(xù)訓(xùn)練下去,直至完成。

5 校驗(yàn),調(diào)整
20000個圖像訓(xùn)練完成

訓(xùn)練完成后,我們就可以直接使用剛才的embedding作為prompt生成照片了
進(jìn)入文生圖頁面


6 圖像模型優(yōu)化
如果訓(xùn)練完的照片還是不像怎么辦?

在image_embedding目錄之下,逐個查看,記住比較像的或者符合你審美的過程照片


進(jìn)入上述文件夾同級的embedding文件,找到和之前所挑選數(shù)字對應(yīng)的兩個pt文件

進(jìn)入SD安裝目錄下的 embedding文件夾,將上述兩個pt文件復(fù)制粘貼進(jìn)來

在文生圖頁面下,記得輸入剛才粘貼的pt文件名字


7 鎖定seed,進(jìn)一步優(yōu)化
在上述生成照片的十幾張照片中,找到一張最順眼的照片,
點(diǎn)擊隨機(jī)種子選項(xiàng)中的“Reuse seed……”按鈕,鎖定seed

再次基于鎖定seed,重新文生圖

8最終效果舉例



