【入門】リアル系顔 LoRA 作成入門
【付録に本学習データセットとLoRAファイルを有料でダウンロードできます】
想定する読者
Stable Diffusion のリアル系顔 LoRA を作ってみたい人
はじめに
この記事では、過去に生成した好きな「顔」画像を利用して、入門者向け顔 LoRA 作成方法を解説していきます。きっとAIがあなたの好みの特徴を学習してくれるでしょう。必要なものは、
自分で作成した学習用イメージ
この記事では筆者が過去に chichipui に投稿したものを利用します
GFPGAN のコマンドライン版
修正機能は利用せずに、顔の自動抽出だけに利用します。
※ 別記事で説明していますが、導入は面倒です。無くても Gimp 等の顔切り抜き手作業で問題ありません。
NMKD Stable Diffusion GUI
LoRA の作成に利用します。
Stable Diffusion webUI (forge)
自動タグ付けと、作成した LoRA の動作確認に利用します。
Beautiful Realistic Asians v6.0
アジア系人物に特化した Stable Diffusion 1.5 のモデルです。
GFPGAN・NMKD Stable Diffusion GUI・Stable Diffusion webUI (forge)のインストール方法
意外にあまり知られていない最も簡単な LoRA 作成方法
筆者が良く使うモデル
学習用素材の準備
筆者の chichipui ページです。アップした画像を学習素材として利用します。
フォルダに画像をまとめます。この28枚の画像で学習を行います。
この状態でもそれなりに学習はできるのですが、より良く顔だけを学習するために、顔をアップにした 512x512 解像度のファイルを作成します。
顔を抽出
30枚程度なので、気合いで顔を切り出しても問題ありませんが、GFPGANのコマンドライン版を利用すると、非常に楽に顔を抽出してくれます。
導入は面倒ですが、GFPGANのインストール方法はこちらで解説しています。
さらに回転修正まで行ってくれるので、学習用素材には最適です。
python inference_gfpgan.py -i "C:\GFPGAN\input" ^
-o "C:\GFPGAN\output" ^
-v 1.3 \
-s 1 \
--ext png \
--bg_upsampler=none
「C:\GFPGAN\input」に画像を保存していれば、それらすべての画像に対して処理してくれます。
output フォルダには「results-gfpgan」フォルダが作成され、さらにそのフォルダ内「cropped_faces」 512x512 イメージが保存されます。
背景に写った人物も抽出してしまうので、学習したくない画像は削除しておきましょう。
タグ付け
一般にLoRA 学習は、一対の「画像」と「画像を説明するテキスト」を利用して行います。もちろん手動でタグ付けしても問題ありませんが、AIを利用する事もできます。Stable Diffusion webUI (forge) だと「Extras」タブから利用できます。
「Caption」をクリックして、先程のフォルダと出力先を入力します。Caption 生成方法として二種類を選べます。Deepbooru は Danbooru タグ(アニメ用)を挿入します。Danbooru を利用していないリアル系のモデルは BLIP の方が良い結果を出します。
画像とそれを説明するテキストが生成されます。たとえば最初の「00000_00.txt」には
a woman blowing bubbles in the air with her eyes closed and her hair in a bunt, looking to the side, Chen Jiru, high detail 8 k, a poster, net art
が記載されています。正しくプロンプトに追従する高品質な LoRA を作成するには、このタグを調整する必要がありますが、顔 LoRA に関しては、既に顔アップで抽出しているので、それほど拘る必要はありません。作り込んでも髪型やメガネ程度だと思います。さらにトリガーワードを先頭に記載してもいいのですが、インペイント用途で利用する場合は別パラメータで調整できるため、あまり気にする必要はありません。つまり(面倒なので)すべてそのまま利用します。※ 顔 LoRA の場合、基本的に同じ顔なので、タグは生成品質にあまり影響しません
これで学習素材の準備は終了です。
LoRA 作成
NMKD Stable Diffusion で作成します。
base モデルは、Beautiful Realistic Asians v6.0 を利用します。
RTX 3060 で一時間程度で終了しました。LoRA ファイルは models → LoRAs に「favoriteface_1000s_lr0002_640px.safetensors」名で保存されます。
LoRA 確認
Stable Diffusion webUI forge を利用して、作成 LoRA の確認を行います。モデルは学習時と同じ Beautiful Realistic Asians v6.0 です。
特徴的な顔(特にまゆげ)が量産されました。
付録
付録として、本記事で利用した学習データセット(若干の修正済み)と顔 LoRA ファイルを有料でダウンロードできます。記事の LoRA との変更点は、配布物としてより適切になるように、ベースモデルを v1-5-pruned.safetensors に変えている事と、次元とファイルサイズ・学習ステップが増えている点です。
上図 png の生2ファイルをサンプルとして同梱していますので、「PNG Info」タブで読み込み、同じwebUI-forgeのバージョンとモデルを利用すると、ほぼ同じ画像が生成されるはずです。
同じ顔が生成できるように、過学習ぎみにしています。ウェイトを0.6程度、CFGも4〜5が適切です。
無くても問題ありませんが、トリガーワードはファイル名と同じで「myfavccpi202404」です。ちちぷい 2024年 4月までの筆者投稿画像という意味でつけています。
note でアップロード可能なサイズが 50 MB ですので、7z 形式で6個のファイルに分割しています。すべてダウンロード後に 7-Zip 等で結合&解凍してください。ご不便おかけします。
単体で利用するものではなく、また v1-5-pruned.safetensors モデルをベースに利用していますので、利用する際は、Stable Diffusion等ソフトウェアやモデルのライセンスに従ってください。言うまでもありませんが、実写を利用していなくても、偶然誰かに似てしまう事があります。十分にご注意ください。
【免責事項】
本ファイルの利用によって発生したトラブル、損害等に対して作者は何ら責任を負いません。
内容の変更や公開の中止をする場合がありますが、それによって生じた損害等に対して一切の責任を負いません。
ここから先は
この記事が気に入ったらチップで応援してみませんか?