前言
本篇要來分享一下製作 (漫畫)姊妹會秘儀 -- Stable Diffusion繪製 時用到的各種AI生成技巧。
很多時候,為了將心中一個想法實現,必須用上許多自己原先不會的技巧,雖然過程是痛苦的、掙扎的,但是這樣一點一滴邁向終點,過程之中會慢慢進化,當到達時,就會發現收穫的不只是成果,還有一路上學到的新技能。
一個多月前實驗一個想法時,偶然刷到了一張稀有等級的構圖。當我看見那張圖的瞬間,一大篇小說的草稿就從我腦海深處浮現出來,甚至某些畫面就栩栩如生在我眼前展開,靈光一閃之際,暗自決定要將其中一些片段當作練習,試著將它做成漫畫形式。
在三個月之前,美術能力為零,作畫上限是火柴人的我而言,實現難度是無限大,實現時間是無限長。但是在AI算圖的時代,從技術準備加摸索,總共是一個月,實作時間是六個小時。在這個時代,想做出漫畫但繪畫技巧為零的人是幸福的。
第二頁
故事要從第二頁開始,在實驗Stable Diffusion提示詞訣竅(九) 提到的狂野生圖法時,使用提示詞storyboard(電影分鏡)時偶然刷到了超稀有等級的圖片。雖然剛出現時,所有角色的臉都是崩的(其實是連一張完整的臉都沒有),但是經過放大與臉崩修復之後,整個氣勢就出來了。角色們的表情與整體氛圍都在敘述一個故事。
為了講述這個故事,我用我極為有限的繪畫能力畫了一張銜接這個關鍵格的一頁草稿,就是文章開頭那張筆記本頁面上的火柴人分鏡稿。
為了實現這一頁所需要的技術,我根本就還不具備,為了搞清楚到底如何使用AI來將這一頁做出來,我邊看關於如何畫漫畫的文章與影片,邊摸索如何使用AI與簡單的繪圖軟體來製造一個能看的成品。
在這一個月之中,我寫的AI學習心得文之中,十篇裡面有七篇是為了這個目標有方向地研究。終於讓我覺得有一套可行的方法與技術可以把它做出來。
首先是第二頁的打磨,將圖放大兩倍再使用 Stable Diffusion進階 -- 臉崩修復 來修復每個人物的臉之後,繼續放大兩倍。這時候還有許多細節需要打磨,但因為整張圖已經太大,無法一次塞進Automatic1111裡面處理,所以我需要使用繪圖軟體將圖片分區剪裁,每區為包含一個人物的768x1024長條圖,一區一區餵進Automatic1111之後,Inpaint中央部分的臉、頭髮與胸部之後再拼接回原圖,這樣才能保證重繪的地方不會讓拼接圖出現銜接縫。
第一頁
而為了將第一頁從草稿變成漫畫稿,花費的時間比第二頁多了幾十倍。
首先,要解決Stable Diffusion或甚至可說整個AI繪圖目前最大的問題:角色不穩定性。Stable Diffusion的解決方法是使用LoRA來為人物訓練專屬的小模型,但在這邊有個難題,就是我只有一張圖,而訓練LoRA需要用到最少二十張圖才有穩定的品質。幸好這問題在ControlNet的Reference模型出來之後就迎刃而解囉。
我找出了一個可以用單張高畫質圖片來訓練動畫角色LoRA的方法,詳細流程寫在了 Stable Diffusion -- 訓練LoRA(五) 裡面,並用這個方法替第一頁的主要角色訓練了LoRA,這樣就能在每一格都重現同一個人物。
接下來的第二格則是另一個問題,那就是大部分的ACG與2.5D模型都有的通病——光源太亮,而這整個故事的場景都是在夜晚,而且是穩定光源非常昂貴的中古背景奇幻世界,除了使用繪圖軟體調暗亮度,並且手刻光影之外,另一個可行且有趣的方法就是指示AI如何用我指定的光源塗佈畫面。
在 Stable Diffusion進階 -- 光影控制 裡面,我發覺一個我原本覺得華而不實,純粹展示技巧的技術其實在這種場合非常有用,就是使用遮罩引導AI分配光線。我用下面的黑白遮罩引導AI在圖片右方做出唯一的光源,搭配上ControlNet的Openpose與Depth維持人物的姿勢與深淺做出第二格。
但是出來的半完成品中,人物的左右衣袖原本都是紅色的,試了幾個方法之後,最後我用了 Stable Diffusion基礎 -- 塗鴉(Sketch) 裡提到的Inpaint Sketch功能塗白整條手臂再重繪,這樣才順利將她的服裝變成全白棉質。所以,不管當初學到的時候覺得這個技能有多無用,只要會用,知道使用的時機,就沒有廢技。
再來就是我花最多時間處理的第三格。AI算圖的另一個大問題是,它無法穩定維持在同一套衣服上,尤其是很多漂亮複雜的衣服其實沒有合適的提示詞來形容。這時候Inpaint就發揮了非常、非常重要的功能。
在Stable Diffusion基礎 -- 局部重繪的應用 裡面,四種不同的Mask Content都是用同一個圖,也就是芙悠穿著晚禮服走上樓梯的第三格來當示範,因為這就是我學習Inpaint不同參數的動力來源,想要將草稿的動態與背景做出成品的願望激勵著我。我使用Inpaint的不同選項做了以下修改:
- Fill:將左右完全不一致的樓梯重繪成了正常的樓梯。
- Original:將禮服的背面材質置換成與第二頁一致的藍色星星紗,同時保持了裸背的晚禮服形狀。
- Latent Nothing:將晚禮服臀部上的多餘金邊裝飾移除掉,同時保持原本的光影與曲線。
使用Inpaint處理這些部分之後,剩下的服裝不一致只能靠繪圖軟體自己想辦法剪貼拼裝上之後再用img2img來重繪光影,並且讓浮浮的拼貼裝飾(頭飾,臂環)貼回人體身上。
而人物被算壞掉的左手,則是使用 Stable Diffusion進階 -- 手部修復 提到的方法,在人偶姿勢網站做出一樣的手,再拼接回原圖之後用Inpaint修復。
這些都完成之後,製作漫畫的素材就到齊了,剩下的就是用繪圖軟體將圖拼接起來,製作頁面、框線、陰影與對話框,這就超出本文的範圍了。
翻譯
講一個題外話,在我寫中文台詞時,其實是先在腦海產生英文的台詞,再轉成中文寫下來,這樣比較不會讓西方奇幻背景的故事有太重的中文味。但是在製作漫畫的英文台詞時,我並沒有直接使用當初的台詞,而是把中文版的台詞拿去詢問ChatGPT,沒想到ChatGPT產生出來的英文台詞非常好,遠超過我自己想的英文原台詞。只需要一些簡單提示,ChatGPT就能做出合理的翻譯,且翻出好幾個版本讓我選擇,我在數個版本之間挑選最符合角色的個性、知識程度與出身階級的段落,拼接重整之後得到了可以用在漫畫裡的版本。
我在ChatGPT使用的提示文字是:
一篇短篇小說中的對話,有兩名角色,哈娜(Hana)與芙悠(Fuyu),一個民族名稱,泰洛斯(Thelos),將以下這段小說內文翻譯成英文:
我相信日後只要提供更詳細的背景設定提示詞,ChatGPT就能為我提供更精細的翻譯,但是目前這樣簡單的提示詞就足夠幫助我完成兩頁英文版的翻譯了。
結語
做完這個短短兩頁的漫畫,有一種不可思議的感覺,畢竟這種事情在AI時代之前是壓根就不可能實現的。但是現在,一切都有可能。只是需要一些些繪圖軟體的使用技巧,還有很多的AI算圖知識,加上試錯的時間與結合不同技術的創意,就有辦法達到。
在這個時代,想做出美麗圖畫但畫技為零的人是幸福的。
祝大家AI算圖愉快!至少,我是痛並快樂著。