Stable Diffusionで、大量の画像のバリエーションを生成したい時があるだろう。
色んな表情パターンで生成したい…という程度なら、プロンプトを色々用意すればいいだけなので、そういうのはワイルドカード系の拡張機能を使えば済むだろう↓
【Wild card】でランダム画像生成する方法 (SD WebUI) | IRoAI(イロアイブログ)
あるいは、百個のプロンプトがあるんだけど、プロンプト入力→生成待ち→プロンプト入力…ってチマチマやってたらキリ無い…というような場合は、Agent Schedulerという拡張機能を使えば、先にタスクだけを全部設定しておいて、後はスタートさせて寝てしまえば勝手に順次画像生成してってくれる…というような事も可能である。↓
https://www.youtube.com/watch?v=C1uHKaflJbY
そういう作業はそれで済むが、じゃあ例えば、OpenposeCollectionのような**大量のOpenPose画像を全部試したい!**という時はどうすればいいだろう?一つずつ手作業で生成してOpenpose画像を差し替えて…ってやるしかないのか?それもバカらしい。
OpenPoses Collection - v 1.0 | Stable Diffusion Poses | Civitai
結局、一番柔軟なStable Diffusion生成の自動化は、PythonとかからWebUIのAPIを叩く事じゃないだろうか?
そうすれば、プロンプトの操作からタスクの自動化、さらにはControlNetの画像選択、パラメータ変更なんかも全部コードから出来て非常に便利である。
そして、こちらにPythonから簡単にWebUIのAPIが叩けるライブラリがある↓
https://github.com/mix1009/sdwebuiapi
とりま、環境にこのsdwebuiapiをインスコしよう↓
pip install webuiapi
使い方は?というと、非常に簡単であり、こちらの記事で解説してくれているのでそっちを見て欲しい↓
【AUTOMATIC1111】Stable Diffusion WebUIをPythonから直接実行するには?[webuiapi] - AI教科書
5行のコードだけでとりま画像生成できちゃう。