Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the ultimate-addons-for-gutenberg domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /opt/bitnami/wordpress/wp-includes/functions.php on line 6114
[Python] 圖像處理 – Stable Diffusion 001 – Intro and Installation - 八寶周的研究小屋

[Python] 圖像處理 – Stable Diffusion 001 – Intro and Installation

在初期,AI 圖像生成有著許多瑕疵受人詬病,以及種種版權問題。然而其後續依舊蓬勃的發展,不斷的增強與改進,而發展最中心便是 Stable Diffusion,伴隨著越來越多開源的模型與插件,甚至於 Nov. 2023 提出能夠將圖片轉類似 gif 的動畫效果的新模型。那到底,Stable Diffusion 為何如此受歡迎又如何使用呢?

【前言】

在初期,AI 圖像生成有著許多瑕疵受人詬病,以及種種版權問題。然而其後續依舊蓬勃的發展,不斷的增強與改進,而發展最中心便是 Stable Diffusion,伴隨著越來越多開源的模型與插件,甚至於 Nov. 2023 提出能夠將圖片轉類似 gif 的動畫效果的新模型。那到底,Stable Diffusion 為何如此受歡迎又如何使用呢?

【預計內容】

  1. Stable Diffusion 介紹
  2. Stable Diffusion 的應用
  3. 安裝 Automatic1111 的介面工具
  4. 淺談 AI 生成與繪畫創作

【主要內容】

1. Stable Diffusion 介紹 [1]

Stable Diffusion 在 2022 年便已推出,其主要架構元件包括變分自動編碼器、正向和反向擴散、雜訊預測器和文字調整。本質上為擴散模型卻有獨特之處,並非依靠像素空間(Pixel Space)而是潛特徵空間(Latent Space),大幅降低處理的需求。一般家用的顯卡也足以支撐其工作量,但若想生成高像素的大圖,至少要超過 RTX3050Ti 4GB (我的筆電規格)以上的顯卡才能夠驅動。

再拉回來,而除了本體的生成模型之外,後來官方也支援越來越多,最知名的莫過於 LoRA 系列的後處理模型。而伴隨著開發者的投入,又有如 ControlNet 這種知名的套件增加處理精細度。最終造就這個仍舊不衰且不斷精進的社群。

目前主要使用的版本有 v1.5(非官方的優化),v2.1,v1.0 XL 三種。XL 是指特大模型,生成時間會久上許多且個人認為品質也沒差太多;雖然 v2.1 速度快且設備需求更低,但 v1.5 作為長期下來的累積,是截至目前(Mar. 16, 2024)外部模型最多的分支。

2. Stable Diffusion 的應用

剛剛我們說到 Stable Diffusion 的運作,那又能用來處理那些事項呢?該模型本質上不設限生成內容,因此色情與血腥的內容也能夠生成(但請注意使用規範)。那用來生成圖像自不用多說,開頭提到 Stable Video Diffusion 目前還算是概念 [2],究竟有什麼其他用途呢?

依靠 ControlNet 插件,我們能透過分析線搞進行圖生圖,分析深度圖增加空間感,利用 open-pose 控制角色的骨架。透過 Inpaint 插件,也能夠輕鬆的進行雜物去除的遮罩。單單生圖之外,更重要的是增強與後製還有延伸應用。

圖 1:本人測試 Open-Pose 捉取人物骨架的畫面

3. Automatic1111 的介面程式安裝

這位創作者提供的 WebUI 算是最知名的,並且有持續更新(發文前兩周),是一個利用 Gradio 介面能夠控制各種功能的全方面工具。那跟著步驟安裝時請確認 Python 版本為 3.10,怕影響環境的朋友可以參考 venv。

圖 2:本人進行 ControlNet 線搞轉圖片測試畫面

Step. 1 — 複製 github 專案

請先安裝好 git 到本機,便能透過以下指令複製專案到本地了。

BAT (Batchfile)
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

Step. 2 — 進行安裝

先進入到 Python 3.10 的環境中,進入專案位置後,輸入

BAT (Batchfile)
./webui-user.bat

第一次執行,會自動在專案內建立 WebUI 專用的 venv,並且安裝 Stable v1.5 模型等物件,因此執行時間稍久。之後執行也當是靠這個指令。

4. 淺談 AI 生圖與繪畫創作

由於作者本身有在學畫,起初也覺得 AI 生圖就是來搶飯碗、不入流的東西。那由於 AI 的量產性,也確實導致如 ArtStation / Deviant Art / Pixiv 等平台遭受洗版,甚至到後來爆發了反 AI 運動。但我必須承認 AI 在這領域越來越成熟,到了 Pixiv Fanbox 必須封禁的程度。那我也逐漸開放,視 AI 生圖為繪畫參考資料或生產工具。

但對於繪畫的風格,現在還是傳統繪圖更有表現張力,情緒與細節更佳的豐富。因此,對於老派的我們認為傳統繪圖還不會被取代。那對於學畫的我,就想說是否能依靠 Stable Diffusion 更改參考圖片的風格與表達手法,讓傳統繪圖能夠更加精深,並且對於學畫的人能不在依靠觀察角色自己比劃如何排版,修修改改,而有個更直觀的感受與學習素材。

【後話】

Stable Diffusion 是非常強大的工具,無可厚非的影響了繪畫領域,也提供了效率的工作模式。那在之後的文章中,將帶領各位各家熟悉此項工具,那我們下期再會。

【參考資料】

[1] AWS — What is Stable Diffusion
https://aws.amazon.com/what-is/stable-diffusion/?nc1=h_ls

[2] Introduce to Stable Video Diffusion and Model Download

https://stability.ai/news/stable-video-diffusion-open-ai-video-model

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.