最新版本 Stable Diffusion 開源 AI 繪畫工具之圖生圖進階篇

tiny極客發表於2023-04-12

? 圖生圖基本引數

  • 圖生圖功能主要包括六大類:圖生圖 / img2img塗鴉繪製 / sketch區域性繪製 / inpaint區域性繪製之塗鴉蒙版 / inpaint sketch區域性繪製之上傳蒙版 / inpaint upload批次處理 / batch
  • 而圖生圖的基本引數包括但不限於以下幾種:
  • Resize mode: 縮放模式,包括 拉伸/Just resize裁剪/crop and resize填充/resize and fill僅調整大小(潛空間放大/just resize (latent ipscale) ,縮放模式指的是當原圖和要生成的圖的寬和高不一致的時候,選擇的縮放模式,一般選擇裁剪,如果原圖和生成圖的寬高一致的時候,選擇任意均可
  • Mask blur: 蒙版模糊度,在 0-64 之間調節,就是將我們塗抹區域,從邊緣向中間透明過渡。數值較小的時候,邊緣越銳利,所以一個合適的值會讓圖片看起來更真實,數值一般預設即可
  • Masked content: 蒙版矇住的內容,包括 填充/fill原圖/original潛在噪聲/latent noise無潛在空間/latent nothing。這是一種預處理的步驟,其中填充是指使用蒙版邊緣影像的顏色填充,不過顏色已經被高度模糊;原圖則是同原圖一樣不改變任何細節;而潛在噪聲則是使用噪點進行填充;而無潛在空間就是噪點值為0的狀態,可以看到只有原圖保留了原來的畫面,所以一般選擇原圖即可
  • Mask transparency: 蒙版的透明度,一般預設為0,即不透明,因為透明度越高,AI發揮的空間越小,基本上當透明度大於60,預處理就會失去作用
  • Mask mode: 蒙版模式,包括 繪製蒙版內容/inpaint masked繪製非蒙版內容/inpaint not masked,這個很好理解,選擇第一個就是隻在蒙版區域重繪,另一種則相反,正常一般預設第一個即可
  • Inpaint area: 繪製區域,包括 全圖/whole picture僅蒙版/only masked。全圖重繪是指在原圖大小的基礎下繪製蒙版區域,優點就是內容與原圖融合的更好,缺點是不夠細節;而蒙版重繪是隻處理的時候將蒙版區域進行放大到原圖的尺寸,畫完之後再縮小放到原圖的相應的位置,優點就是細節更好,缺點也是細節太多,與原圖融合的不夠好
  • Denoising strength: 重繪強度,預設0.75,低強度就是基本不重繪,越高重繪越強,融合越不好,所以預設即可
  • 雖然圖生圖的引數比較多,但大多數的時候,我們選擇預設即可,因為很多時候,只需要正確的選擇而非過多的選擇,個人也僅僅設定一下縮放模式、取樣器、取樣步驟和寬高進行出圖

個人常用出圖引數

? 圖生圖(img2img)

  • 可以根據你上傳的圖片生成一張在原圖基礎上創作的新圖片
  • 可以透過修改 Prompt 去自定義想要的結果圖片,比如白色頭髮,紅色眼睛等等

圖生圖

? 塗鴉繪製(Sketch)

  • 在原圖基礎上塗鴉後,進行二次創作,這是最基礎的用法,當然也可以進行線稿的上色
  • 模型要選擇好,如果想要生成二次元的,記得選擇二次元模型,下圖測試選擇的是真人模型
  • 在進行線稿上色的時候,設定 縮放模式為裁剪 ▶ 取樣器是 DPM++ 2M Karras ▶ 取樣步驟設定的是30 ▶ 指令碼 Script 中選擇是影像迭代 Loopback ▶ 迭代次數設定成多少生成的圖片就是多少張,一般設定2-4,防止顯示卡撐不住 ▶ 最終的重繪強度 Final denoising strenght 設定成了 0.88 ▶ 重繪曲線選擇 Linear ▶ 迭代中反推提示詞選擇 DeepBooru,生成的最終圖片效果還是很棒的

線稿上色

? 區域性繪製(Inpaint)

  • 在區域性繪製中,我們只需要將需要重繪的地方圈出來,然後加上 Prompt 提示詞即可
  • 其中蒙版的黑色畫筆並不是一種真的顏色,它是一片代表透明(不可見)屬性的區域
  • 比如,將圖片中的女生頭髮換成一頭白髮,只需要將圖片上的頭髮區域塗上蒙版,然後在 Prompt 中輸入 white hair 提示詞即可
  • 當然這裡只作為測試,如果想要更好的效果,自己設定更多的 Prompt 進行描述,除了頭髮,其他任何區域都可以進行重繪

一鍵換髮

? 塗鴉蒙版(Inpaint sketch)

  • 相比於區域性重繪,多了一個蒙版透明度的配置,這是因為這裡的蒙版是可以自定義顏色的
  • 在區域性繪製中畫筆只有黑色,而在塗鴉蒙版中蒙版的顏色會影響到原圖,選擇什麼顏色最終重繪都會往這個顏色上靠
  • 蒙版透明度按照需要顏色的程度調節,最好不要超過40
  • 比如將動漫女生衣服換成紅色的旗袍,只需要將衣服用紅色的畫筆塗抹,然後在 Prompt 中輸入中國旗袍的英文解釋即可,因為塗鴉蒙版的顏色是會影響到原圖的,所以如果是用藍色塗抹衣服,最終將會生成藍色的旗袍

一鍵換衣

? 上傳蒙版(Inpaint upload)

  • 跟塗鴉蒙版其實差不多,只是上傳的蒙版需要藉助其他工具如PS的處理,相比直接手塗肯定是更精確
  • 上傳蒙版的蒙版在製作時可以設定部分透明的效果(不同程度的灰),還有邊緣的羽化等等。此時需要注意具有相同效果的蒙版模糊的使用
  • 需要注意的一點是,在上傳蒙版中,白色代表重繪,黑色代表不處理。也不用細分,如果弄錯了,在蒙版模式中選擇重繪非蒙版就可以
  • 為了方便測試,就將圖片放到塗鴉蒙版中,用黑白兩色把原圖進行圈出,截圖上傳到上傳蒙版中了,順便加了 Prompt 的引數是天空、建築物、人物等,可以看出 AI 只在白色區域進行了重繪,而圈出的黑色是沒有重繪的
  • 還有最後一個批次處理功能,用的不多,也不用講太細,只要輸入圖片所在目錄路徑、圖片處理後儲存的路徑以及蒙版路勁即可批次處理

自定義蒙版

本文參與了SegmentFault 思否寫作挑戰賽,歡迎正在閱讀的你也加入。

相關文章