見出し画像

SD+AUTOMATIC 1111の現時点での使い方

(24/04/04追記)凄まじい早さでアップデートするStableDiffusion系お絵かきAIと、AUTOMATIC1111 WebUI。
去年の夏頃からずっと続く流れの速さ、仕事や家庭の都合で3-4日離れるともう浦島太郎という状態ですが、その一方で安定してきた部分もあります。
現時点での無駄のない使いを固めるべく、忘備録をまとめます。

0からの導入方法

は、いろいろな人が記事を書いてるので省略します。
できる限り最新の記事を見つけ、熟読してからやりましょう。特にpythonは導入手順を間違えたり古い導入方法が交じると状況が凄まじく悪化します。
(正直、どうやってインストールを成功させて動かせたか思い出せない…)
よわよわPCで動作させるにはxformersを実装し、webui-user.batに追加で書き込みます。VRAMが潤沢な人は不要
set COMMANDLINE_ARGS=--precision full --no-half --medvram --opt-split-attention --gradio-img2img-tool color-sketch --deepdanbooru --xformers
set OPTIMIZED_TURBO=true

今のwebUIは、特にhires.fixの仕様が大幅に変わっています。

アップスケーラーを兼ねていて、出力画像を小さめに設定してから倍率を変えるという手順になってますが、デフォのLatentが特殊な仕様になっていてで、サイズを上げるさいにimg2imgで加筆するというものです。
緻密な書き込みが期待できる反面、一部の拡張機能とケンカしてまともな絵ができない場合があります。
本来の意味のアップスケーラーはSwinが最高品質で低速、ちょうどいいのはBSRGANとききました。
hires stepsは0のままだとsampling stepsと同じstep数で拡大した絵を書き込み直します。過剰に書き込みがち=無駄に時間がかかるので、sampling stepsの半分かそれ以下でもいいかも。(参考までに、img2imgではsampling stepsで設定した半分のstep数でしか書き込んでません)
Denoising strengthは重要で、Latentの場合は0.6以上ないと絵がクソボケてしまい、多すぎると絵が変わりすぎます。Latent以外では0.3-0.4がちょうどいいようです。
Txt2imgでのアップスケールはVRAMを多く食うのでRTX3060・12GBでも1.5k-2kサイズの画像の生成が限界でした。それを解決できる拡張機能TiledDiffusionというものもありますが…

今のおすすめモデル

元祖StableDiffusionは、Huggingfaceの登録とトークンが必要で導入手順が面倒、要求スペックも高い、作風的にイラストを描かせるのに向いてないので、使いません。
HuggingFace,Github,モデル投稿サイトでは、リアル系にアート系に色んな人が自作カスタムモデルを公開していますが、日本的なイラスト系で今最も安定して使えるのが、7thAnimeAbyssOrangemix2です。
https://huggingface.co/syaimu/7th_Layer
https://civitai.com/models/4437/abyssorangemix2-sfw
色々ファイルがありますが、2-7GBのckptファイルを一つDLします。小さいほど軽く動作するので、初心者やcolabやよわよわPCなら2GBのものを選ぶのがいいです。7GBとかcolabで使ったら即使用量上限です
これらの最新モデルはリアル寄りの濃い絵柄になりがちなものの、手の作画が大幅に崩れにくくなっています。

背景イラストに特化したcouterfeit v2もなかなかです。
https://civitai.com/models/4468/counterfeit-v20

あと画質調整用のvaeファイルはほぼ必要です。waifu-diffusion-v1-4とりんあーとのvaeがオススメとされています。
1GB未満でvaeやautoencorderて名前のckptを探してDL、
webUIのmodels/vaeにファイルを入れて、webUIを起動したのちsetting-stablediffusionから、使うvaeを選択できます。 

vaeを内蔵してるからいらないモデルもあります。どのモデルとvaeの組合せがきれいかは、研究しましょう。

WebUIはモデル同士や、自作学習データをかけわせる拡張機能があり、人気モデルはすぐMixモデルが作られます。その過程でモデルは得意分野が少しずつ変わっていき、忘れて苦手になるものも出てきます。

LoRaの使い方
今は追加学習データLoRaを使う機能が標準で実装されています。モデル単体では描けないようなニッチなモチーフ、絵柄を付与できるし自作も比較的簡単、というすごいものですが、
これだけで記事がいくつかかけるものなので詳細は割愛します。

WebUIの更新方法

cuiの黒画面は生理的にできるだけいじりたくないって人は、Git for Windowsを導入するとちょっと捗りました(不要だったかもしれない)
https://gitforwindows.org/
webui-user.batを別の場所に退避させてから、stablediffusionのフォルダを選択してマウス右メニュー-git bash hereでpythonのコンソールウインドウが開けます。そこでgit pullします。その後ウインドウを閉じて、webui-user.batを戻して、アップデート完了です。(Windows10と11で操作が微妙に違うらしいです)

おすすめ拡張機能

拡張機能は、githubに公開されてるものならwebUI上で即検索+インストールできます。Extensions-Abaiableタブから、load fromボタンを押すと検索します。

あとは選んでインストールボタンを押すだけ。
ただし有効にするにはwebUIを再起動する必要がありますが)

Bad_prompt
Bad_Artist

https://huggingface.co/datasets/Nerfgun3/bad_prompt
https://huggingface.co/NiXXerHATTER59/bad-artist
webUI検索で出ないぽいですが, 7thのモデルで必須です。negative promptにsketched by bad-artist, (worst quality:1.4), (low quality:1.4) , (monochrome:1.1),(bad_prompt_v2:0.8)とだけ入れれば作画が大安定します。extensionsでなくembeddingsフォルダに入れます。
他にもEasyNegativeなど似たようなものがいくつか出てて、現在のモデルの大半は、そのうちのどれかを使うように紹介ページに指示が書いてあります。

sd-dynamic-prompts
プロンプトのワードをランダムに選べる構文が使えるようになります。キャラ・時間・場所などを自動で組み変えて連続で生成するのに使えます。マニュアルがUIに追加されて便利。

Tiled Diffusion with Tiled VAE
メモリを消費せず高解像度の画像性性ができます。これだけで説明記事がいくつかかけるものなので説明は割愛。
ControlNet
画像を読み込ませて線画の着色や、レイアウトの完全指定ができるようになります。これだけで説明記事がいくつも書けるものなので説明は割愛。

stable-diffusion-webui-depthmap-script
txt2imgやimg2imgの一番下のscriptメニューにDepth Mapが追加され、画像生成時に深度マップが作れます。

またDepthタブが追加され、手持ちの画像から深度マップ、ply形式のメッシュ、深度マップを使った立体動画が作れます。深度マップやメッシュはVRコンテンツや、blenderで使えます。

ABG_extension
scriptにABG Removerが追加され、生成画像からキャラを切り抜けます。

sd-webui-model-converter
AIモデル=ckptファイルを軽いf16、安全なsafetensor形式に変換できます。

普段遣いしないものは、使うとき以外は外すのがいいです。

モデルに関する考察

・メカ少女を生成したときに気づいたことですが、日本的なメカ…ガンダムぽい装備を出せるモデルと出にくいモデルがあります

prompt
masterpiece,highly detailed,best quality, mecha girl,flying, ((cyborg)),light wing,
 dark metallic skin,wet skin, checkered bowtie, collared shirt, checkered pleated miniskirt,
 ,underboob,plastic armor,big breasts,silver hair, grab sword, sci fi suit, 
sweat ,slimy skin, science fiction,in energy pipeline tower,((full body))

negative
sketched by bad-artist, (worst quality:1.4), (low quality:1.4) , (monochrome:1.1),(bad_prompt_v2:0.8),nsfw
Anything3.0は手足のメカ具合、武器、背負いもの、まんべんなくバランスいい 細部は残念


7thAnime_Aは、Anything3.0をさらに精度上げた感じ


7thAnime_Cは黒い線画とベタ塗りが目立つ、尖ったアニメの絵になりがち


AbyssOrangemix2(hard)は女の子とメカをかっこよく混ぜるの苦手か


couterfeit v2は、背景に作画リソースが吸われとる

7thAnime_Cが最もそれっぽいデザインが出せました。
思うに、そこそこニッチで作画の手間がかかるメカ少女やアニメロボは、pixivのトップランクに載りにくく、モデル製作者によっては学習から除外するかもしれない。7thAnimeの場合は絵柄でABCと分けてるけど、ガンダムやアーマードコアをゴツ盛りの厚塗りで大量に描ける人など、まあいないはずで、ベタ塗りの絵だったら比較的ロボが描きやすいはず。だからベタ塗り路線の絵を重点的に学習させてる7thAnime_Cにはロボ成分が多く含まれて、Anime_Cの精度が上がるとか?

・建物特化のcouterfeitv2は、背景に関するワードを盛るとキャラを描かず建物だけ異常に丁寧に描こうとするという特徴があります。

女の子主体で描く指示をガン無視

キャラを描くのが苦手な訳では無いですが、見るからにキャラ並べるのが大変な書き込みの地形に雑な遠近感で配置してくれさらすので、背景のみやらせるか別のモデルて作ったキャラをimg2imgで描きたすのがいいかも

・既存のモデル同士を混ぜ合わせてカスタムしたり、PixivやDanbooruから覚えさせて、ものすごいペースで新たなモデルが作られ続けていますが、混ぜ合わせていけば何でも描ける無敵AIか、平均化され無個性AIになると思われるんですが、実際は得意なものと不得意なものが(作者の趣味で)入れ替わっていく仕様のようです。同じモデルの上位バージョンでもそれは起こり、前のバージョンのほうが良かった、なんてことも多々あります。

初期のSDやWDで生成した不思議な日本建築とかは、今のモデルでは出せません。なんなら当時のモデルを使って描かせようとしても再現できない。

近いものは出せそうだけど、プロンプトは全く別物

AIアートはプロンプトとシードがわかれば誰でも同じ絵が作成できると思われてますが、それ以外に同じ絵を生成するための必要な条件はどんどん複雑化していて、もう事実上不可能になっている気がします。
世界で唯一人、特定のユーザーがその瞬間にしか出せないとこまでいくとしたら、元絵と著作権とかの問題がまた変わってくるかも。

style2paintsという線画着色AIのフリーソフトがありますが、これは数年前からあって今は(数年前から)v4.5ですが、次のv5でstableDiffusionを実装して大幅に作り直すようです。

img2imgではできそうでできなかった、ラフ画からダイレクトに清書された線画の作成、線画を保持したまま実用レベルの着色、が実現できるかもしれません。できるんなら数万でも買うよそんなの。

ぶっちゃけ一部のアーティストがAIにキレてお気持ちするのって、キャラデザと線画の部分だけで、塗りに文句言う人間はいない印象

この記事が気に入ったらサポートをしてみませんか?