Stable Diffusion 教學:如何整合 PaintHua & Outpainting 功能

Photo of author

By 吹著魔笛的浮士德

2023 02 12 072052

AI 繪圖 Stable Diffusion 整合 PaintHua & Outpainting 功能以後,能夠透過簡單的滑鼠點擊,為原始圖片拓展區域外的內容。由於照著日文教學安裝時有一些地方碰壁,所以稍微整理下自己實際操作的心得。

關於 Stable Diffusion

Stable Diffusion 是 2022年發布的深度學習文生圖模型。它主要用於根據文字的描述產生詳細圖像,儘管它也可以應用於其他任務,如內補繪製、外補繪製,以及在 Prompt 指導下產生圖生圖的結果,由於 Stable Diffusion 的代碼和模型權重已公開發布,因此可以在大多數配備有 GPU 的電腦硬體上運行,與 DALL-E  以及 Midjourney​ 等服務相比,最大的差異在於可以本機運行。

而在本機端執行也意味著你可以不受到一些「限制」。至於如何安裝 Stable Diffusion,可以參考本篇:[討論] 猴子都會的AI繪圖軟體安裝教學

關於 Outpainting

當 DALL-E 2 開始曝光時,許多人對於圖片拓展繪製(Outpainting)的功能感到相當驚豔,詳情可看上面影片。

在 Stable Diffusion Webui 上可以透過第三方插件的方式來使用此功能,目前經常被使用的插件有 Infinity & PaintHUA,後者是中國團隊所推出的,如果你不介意使用的話,可以參考這兩篇教學,或是依底下的步驟安裝。

如何啟用 Paint Hua?

  1. 在電腦裡安裝 Stable-diffusion-webui
  2. 使用 Git Pull 功能將 Stable-diffusion-webui 更新至最新版
  3. 在 Stable-diffusion-webui 安裝目錄下用記事本開啟 webui-user.bat
  4. 在第六行找到「set COMMANDLINE_ARGS=」
  5. 在等號後面加上「–api –cors-allow-origins=https://www.painthua.com
  6. 下載「sd-v1-5-inpainting.ckpt」並放入 model -> Stable-diffusion 資料夾內
  7. 點擊 webui-user.bat 等待啟動,並在 Checkpoint 選擇 sd-v1-5-inpainting.ckpt
  8. 在 Chrome 瀏覽器內開啟「www.painthua.com」即可

在這裡要特別注意,要啟動的是 webui-user.bat ,不是 webui.bat ,千萬別開錯了。

設定 –api 時不需要空格,如下圖。

2023 02 12 070913

如上設定後,進入下面網址就能開始拓展了。

開始使用 PaintHua

Hua – AI painting with Stable Diffusion
https://www.painthua.com/

2023 02 12 071141

在網頁端啟動以後,會看到一個空白畫布,與 512×512 的方框,這時只要點擊兩下左鍵滑鼠,就會開始自動繪圖了。

由於預設 Promt 是「”prompt”: “a color photo of cityscope, trees ,sky”,」,所以這時會產生出一組城市街景與樹木的圖片。

2023 02 12 072331

接著你可以將自己想要拓展的圖片拉到畫面中,調整尺寸,然後將方框貼著邊緣就能開始繪製了。

2023 02 12 062659

每次繪製後需要點擊 Accept 才會正式寫入,不然只是先預覽給你看而已。如果要再運算結果就點 More ,接著用 Prev & Next 切換結果,而若想取消點 Cancel 就可以了。

2023 02 12 063059

注意,如果點擊後出現下圖,表示設定錯誤。

2023 02 12 063912

可能看到此訊息的原因包括了:開錯 bat 檔、設錯 api、Port 設錯等等

請依底下步驟除錯

  1. Update A1111 to LATEST version with git pull. Chrome browser recommended (Brave shield will block A1111 because it’s HTTP).
  2. set COMMANDLINE_ARGS=–api –cors-allow-origins=https://www.painthua.com in webui-user.bat.
  3. A1111 settings: use sd-v1.5-inpainting model, turn off “Apply color correction to img2img results”, and set “Inpainting conditioning mask strength” to 1.

如果需要去除畫面中的物體、內容的話,就點擊 Mask 圈選區域然後重算一次圖。

2023 02 12 072052  

去除後,畫面中的煙灰缸就消失了。

2023 02 12 072846

如果要更改畫布大小以及方框尺寸的話,就可以到 Config 齒輪圖案裡去做調整,畫布最大不能超過 4096 x 4096 。

如果要去除區域的話,用右鍵拖拉即可。

而若你想找人討論的話,也可以到官方 Discord 群去,水量不多就是。

這裡也有影片教學參考:


吹著魔笛的浮士德
遊戲產業觀察評論家、9 級 Google 嚮導美食探店者、親子成長的初心者
合作信箱:gameqbfaust@gmail.com

追蹤 Instagram:https://lihi3.cc/vlzV5

↓追蹤 Facebook 專頁↓