Stable DiffusionのGUIであるFooocusは一言のプロンプトで多彩な画像が生成できる

こんにちは。今回はStable DiffusionのGUIであるFooocusについて、その概要と使い方、出力画像について解説していこうと思います。
Fooocusとは
Fooocusとは、Stable Diffusionの拡張機能であるControlNetの開発者であるlllyasviel氏によって開発された、Stable Diffusionの簡易ユーザーインタフェースです。
以下がFooocusの公式リポジトリとなります。
https://github.com/lllyasviel/Fooocus
公式サイトでは以下のように説明されています。(公式サイトの日本語訳(google翻訳)です)
Fooocus は画像生成ソフトウェアです。
Fooocus は、Stable Diffusion と Midjourney の設計を再考したものです。
Stable Diffusion から学んだこのソフトウェアはオフライン、オープンソース、無料です。
Midjourney から学んだように、手動による調整は必要なく、ユーザーはプロンプトと画像に集中するだけで済みます。
Fooocusには、多くの内部最適化と品質改善が組み込まれ、自動化されています。ユーザーは、これらの難しい技術的パラメータをすべて忘れて、「新しい思考媒体を探索し、人類の想像力を拡張する」ために人間とコンピューターの相互作用を楽しむことができます[1]。
Fooocus はインストールを簡素化しました。「ダウンロード」を押してから最初のイメージを生成するまでに、必要なマウス クリックの回数は 3 回未満に厳密に制限されます。最小 GPU メモリ要件は 4GB (Nvidia) です。
Fooocus は、上級ユーザーが完璧な結果を得るために多くの「fooocus 専用」機能も開発しました。ここをクリックして高度な機能を参照してください。
[1]デビッド・ウッド、2019年。
こののように、Fooocusはロースペック環境でも動作するように設計されており、VRAMが少ないマシンでも、最新モデルのSDXL1.0及び派生モデルを動作させることが可能です。
Fooocusを使ってみる
なにはともあれ、Fooocusをインストールして画像生成をやってみましょう。
ご自分のPCが、NVIDIAのグラフィックボード(VRAM4GB以上)を搭載し、メインメモリが16GB以上であれば、以下の手順でインストールしてみましょう。
Fooocusのファイルのダウンロード
まず公式リポジトリにアクセスします。
GitHub – lllyasviel/Fooocus: Focus on prompting and generating
Githubのページを開いたら、画面右側の Releses をクリックします。
Fooocus_win64 の圧縮ファイル(.7z)をダウンロードします。[2]
ダウンロードが完了したら、.7zの圧縮ファイルを解凍してください。
[2]拡張子が.7z(!?) という方は、以下のページから7z形式の書庫ファイルを解凍できるツールをダウンロードして、ファイルを解凍してください。
窓の杜 - 7-Zip 7z形式などに対応した解凍・圧縮ソフト
Fooocusを起動する
cmdかPowerShellを起動して、先ほど解凍したディレクトリ内の run.bat を実行します。
※私の環境はログインユーザのホームディレクトリに解凍しました。皆さんは任意のディレクトリに解凍してください。
初回起動時は、自動的にSDXL1.0のモデルファイルのダウンロードが行われますので少し時間がかかります。
※baseファイルとrefinerファイルの2つで約12GBあるので、インターネット回線によっては数時間かかりますが、じっと辛抱してダウンロードしてください)
Fooocusが起動すると以下のようにURLが表示されますので、ブラウザに入力してください。
無事にFooocusが起動すると、ブラウザ上に以下のようにFooocusの画面が表示されます。
Fooocusで画像を生成する
Fooocusで画像を生成する手順を解説します。
Fooocusが起動したら、画面下のテキストボックスにプロンプトを入力します。入力が完了したら、テキストボックス右側のGenerateをクリックします。
今回、まず簡単なプロンプトの例として cute girl を入力してみます。
いきなり、なんともいえない、高精細な画像が生成されました。さすが、SDXL1.0の実力ですね。この状態では、プロンプトの入力しかできないように見えます。
ということは、出力したいイメージにあったプロンプトを一生懸命考えなければならないのか…と思われる方もいらっしゃるかもしれません。
当然プロンプトがもっとも重要ですが、実は、Fooocusには、いくつかのパラメータがあり、そちらを利用することで、より高度な画像を生成したり、プロンプトを省略することが可能です。
では、Fooocusのパラメータについて、解説いたします。
Fooocusのパラメータを設定する
Fooocusの画面が表示されたら、左下のAdvancedのチェックボックスをオンにします。
以下のように画像のプレビュー領域の右側に、パラメータ設定欄が表示されます。
画像サイズ、枚数、ネガティブプロンプト
Settingタブが選択された状態では、画像サイズ、生成枚数、ネガティブプロンプトが設定できます。
Seed値
Seed値の設定については、Settingタブの一番下にあるRandomのチェックボックスをオフにします。
するとSeedのテキストボックスが表示され、現在設定されているSeed値が表示されます。Seed値を変更したい場合は、このテキストボックスに入力してください。
モデル、Refiner、LoRA
設定画面にてAdvancedのタブをクリックします。
以下のようにモデル、Refiner、LoRAを指定する項目が表示されますので、ドロップダウンリストから選択してください。LoRAについては、適用量も指定することが可能です。
スタイル
設定画面にてStyleのタブをクリックします。
以下のようにRaw Mode、 Image Styleを指定する項目が表示されます。
これらは、Midjourneyと似たようなパラメータであり、これを指定することで、プロンプトで頑張らなくても、さまざまなスタイルの画像ができるという優れものです。
こちらについては、次回、実際のスタイルを指定すると、どのような画像が生成されるかを紹介していきたいと思います。
まとめ
今回はStable DiffusionのWebUIであるFooocusの使い方について解説してみました。
Fooocusを使えば、ロースペック環境でも問題なく最新のSDXL1.0ベースのモデルを動作させることができますので、ぜひ活用してみてください。
また、今回の記事を書いている間に、バージョンアップがあり、機能も追加されていました。
Stable Diffusionをはじめ、様々なAIが常に進化していますので、チェックしながら最新にトライしてみてください。
きっとあなたにぴったりのAIが見つかると思います。