[生成UI]Stable Diffusionでアイソメイラストを生成する①txt2img
0.目的の設定
最初に、Stable Diffusionを使うための目的を簡単に話します。
私はインハウスのUIデザイナーとして働いています。
実際の仕事ではFigmaやmiroでUIをデザインするだけでなく、開発チームやクライアントとのデザイン検討やプレゼンのために資料を作ることも多いため、「仕事で使うイラストを簡単に作れるようになる」が目的です。
生成したいアイソメイラストとはこんな↓イメージ。BtoB系のサービスに使われるUIを担当するので、物流とか医療とか金融とかのイラストを出せるようになりたいです。
今はAdobe Stockを使ってやりくりしていますが、探すのが大変だったり、ダウンロードしても色や細部を直したりと時間が取られてしまいます。
実際の業務で生成AIで作った画像を使うのには権利的な問題がありますが、ひとまず試してみようと思います。
1.Stable Diffusion をインストールする
まずはPCにStable Diffusionをインストールします。
こちらのサイトを参考にしながらインストール&セットアップしました。
PCのスペックは以下の通りです。
途中、Pythonのインストール場所が間違っていたのかStable Diffusionが起動しなかったのですが、この記事で解決できました。
インストール自体がけっこう難しいのですが、ChatGPTに聞くと大体教えてくれます。
2.モデルをインストールしてみる
やっと起動できました。UIはこんな感じ。
試しにプロンプトから生成してみます。
プロンプトは英語のほうが良い精度の画像がでるので「アイソメトリックイラスト、物流倉庫、ライン、作業員、白背景」を英訳して入れてみます。
Prompt : isometric illustration, Logistics warehouse, line, worker, white background
うーん…遠目で見るとそれっぽいけど、大量のチーズと謎の白い粉を運んでいるように見える。到底使えない。
調べてみると、デフォルトで入っている”学習モデル”だといい感じの画像が生成できないようです。
とりあえず、こちらのサイトを参考に商用可能なモデルを4つインストールしてみます。
CyberRealistic (リアル調な写真)
epiCRealism (リアル調な写真)
EnvyMix (アニメ調)
Pastel-Mix (パステルイラスト調)
3. モデルを試してみる
では、先ほどと同じプロンプトで出してみます。
結構いい感じです。特にcyberrealisticとepicrealismが線もまっすぐでよさげに見えます。
ただ、倉庫の中の様子を出したかったのですが、「アイソメ」をプロンプトにいれると問答無用で俯瞰図になってしまうようでした。
モデル別の得意不得意を把握するために、いろんなテイストの画像を生成してみます。
①サイバーパンクっぽいコンセプトアート
いい感じです。やはり、シンプルな絵よりも複雑な絵のほうが向いているようですね。Epicrealismは、セクシーな女性がやたら出力されるので何回かやり直しました。こういう時に使えるのがネガティブプロンプトですが、後ほど詳しく書きます。
②ダウナー系の青年
これも結構いい感じ。人物は、髪型や服装やポーズを指定するのがコツみたいです。アニメ系の画像生成が得意なEnvymixやpastelMixは本領発揮しています。
ちなみに、StableDiffusionでデフォルトで入っているモデルだとこんな感じ↓
作画崩壊がすごい。なんか二人出力されてるし…
③ホラーゲームに使えそうな背景アート
個人的にインディーゲーム制作に興味があるので、背景アートも試してみました。茅葺屋根は難しいかな?と思いましたがいい感じです。
3. Text to Imageでのプロンプトのコツ
いろんなテーマで生成してみると、プロンプトのコツがつかめてきました。
とりあえず最初は
①プロンプトの順番
②スタイル、構図などを細かく指定する
③ネガティブプロンプトを入力する
の3つを抑えると良さそう。
①プロンプトの順番
プロンプトは先に書いてあるワードの影響度が高くなるので、
・対象(人、動物、建物、乗り物など)
・スタイル(イラスト調、写実的、アニメ風など)
・構図(アングル、向き、撮影距離など)
・対象の詳細(人種や年齢、髪型や服装、表情など)
・その他(背景、雰囲気など)
の順番で区切って書くと良さそうです。
②スタイル、構図などを細かく指定する
短いプロンプトだと、予想外の絵が出て楽しいものの、目的の絵を出すのには試行回数が必要になってしまいます。
・スタイル(イラスト調、写実的、アニメ風など)
・構図(アングル、向き、撮影距離など)
などを細かく指定すると思い通りの画像に近づきます
③ネガティブプロンプトを使う
生成AIでよくあるのが、指が6本あったりやたらセクシーな女性が出てきてしまう現象でした。
それを解決するためにネガティブプロンプトを使います。
Stable DiffusionのUIには、プロンプトとネガティブプロンプトを入れる欄があります。
ここにネガティブプロンプトを入れると、そのワードを避けた画像が出力されます。
クオリティーをちゃんと上げろ、白黒はダメ、変な骨格はやめろ的な内容です。nsfwはNot Safe for Working(職場で見るのには適さない=セクシーな内容)という意味ですね。
ネガティブプロンプトはこちらのサイトなどに参考例があるので、私はそのまま使っています。
4. Chat GPTにプロンプトを書かせる
最後に、Chat GPTにプロンプトを書かせる方法があるようなので、こちらも試してみました。
出したいイメージは、「近未来で看護師ロボットが車いすの老人を世話している様子」
できたプロンプトとネガティブプロンプトがこちら
なんか長いな?と思いつつ、入力してできた画像がこちら↓
結構いい感じ!今までよりも狙った構図で出せるようになりました。ロボット看護師にはならないし、右の画像はなぜかおじいちゃんがミニスカですが…
ちなみにこの画像を出すまでも一発ではいきませんでした。ロボット単体の絵になってしまったり、車いすの老人にならなかったり…
そういう場合は、ChatGPTで指示を出しながらプロンプトの精度を上げていました。
ちなみに、同じプロンプトで出力された副産物がこちら↓
お前が座るんかい。そしてなんだその服装…おじいちゃんの目線もなんかいやらしいですね。「nsfw」をネガティブプロンプトに入れたはずなのに、全裸でなければOKなのでしょうか。看護師ロボに「asexual」とかの指定を入れたほうがよさそうです。
5. まとめ、次にトライしたいこと
色々試してみてモデルの特徴やプロンプトのコツがつかめてきました。ただ、目的の「仕事につかえそうなアイソメイラストを出す」には遠いので、まだまだ試す必要です。
今回はText to Image(プロンプトのみで画像を生成する)を試しましたが、次はImage to Image (ラフ画などから画像を生成する)を試してみたいと思います。
この記事が気に入ったらサポートをしてみませんか?