見出し画像

Stable Diffusion Web UI における色の指定についていろいろ試してみた

最近、画像生成AIにハマっていて、いろいろと画像を作成して遊んでいます。
が、なかなか思いお通りにはなってくれません。特に色が指定していない部分にまで影響しているように感じたので、いろいろと試してみることにします。

今回のテストでは、モデルは "Counterfeit V3.0" を使用しました。

プロンプトごとの結果

単純なプロンプト

まず、単純に "portrait of a cute girl" と入れてみました。
結果は以下の通り。まずはこれが基準になるかと思います。

portrait of a cute girl

唇を赤にしてみる

"red lipstick" を加えてみました。
髪や瞳にも赤が影響しているようです。唇だけ指定したつもりでも、色のキーワードは全体に何らか影響してしまうようですね。これが色をプロンプトに指定するときの難しいところです。

portrait of a cute girl, red lipstick

茶髪にしてみる

"red lipstick" から "brown hair" に変えました。
これも同様に髪と瞳に適用されました。さすがに唇が茶色になるようなことはないようですが。

portrait of a cute girl, brown hair

髪、瞳、唇に色を指定

では、ということで、髪と瞳と唇にそれぞれ異なる色を指定してみました。
一応塗り分けたようですが、服や背景などが赤となっています。赤って影響力が強いんでしょうか?

portrait of a cute girl, brown hair, blue eyes, red lipstick

さらに服、背景に色を指定

さらに、それでは、ということで、服や背景も指定してみました。
背景は割りとプロンプト通りですが、服に関してはどうしても赤が影響してしまうようです。

portrait of a cute girl, brown hair, blue eyes, red lipstick, beige cloth, white background

赤い唇の指定をはずす

あちこちに影響している "red lipstick" を外してみました。
一応、プロンプト通りのように思います。
推測するに "girl" が "red lipstick" なのが自然ではないため、他に影響していったように思います。

portrait of a cute girl, brown hair, blue eyes, beige cloth, white background

少女から女性に変えてみる

では、"red lipstick" でもおかしくない "beautiful woman" だとどうなのでしょう?
髪については4つのうち3つに影響していますが、瞳への影響は少ないように思います。やはり、"red lipstick" については "girl" より "woman" の方が自然ということなのでしょう。

portrait of a beautiful woman, red lipstick

唇の色をピンクにしてみる

唇の色をピンクにしてみました。
やはり指定していない部分(特に髪)には影響するようです。

portrait of a beautiful woman, pink lipstick
portrait of a cute girl, pink lipstick

自然な色と指定する

自然な色という表現でいろいろ指定してみました。
髪の色と瞳の色は何も指定しないときと同じなので、これがこのモデルの "自然" な色なのでしょう。

portrait of a cute girl, natural hair color, natural eye color, natural lipstick color, natural cloth, white background

まとめ

以上のことから

  • どこかに色を指定すると指定していない箇所などに影響する

  • 不自然なものだと特におもわぬところに影響する

  • いろいろ指定しても色は影響し合うようで、なかなか思い通りにはいかない

ということでしょうか。
細かく部分的に色をつけたい場合は Inpaint を使うなどした方が良いように思います。

例えば、

元画像

上記画像を ControlNet (canny) に指定した上で、プロンプト "make her hair brown" と指定

ControlNet の設定
make her hair brown

上記画像を img2img(inpaint) に転送。唇部分をマスクして、プロンプトに "red lipstick" を指定

red lipstick

細かく色を指定したい場合は、こうして手間をかけるしかないようです。

でも、やはり画像生成AIでいろいろと画像を生成するのは楽しいです。これからもいろいろ作っていこうかな?と思います。


この記事が参加している募集

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