2022年10月20日木曜日

雑記 画像生成AIについて

最近、ブログの更新も月イチ程度になってしまい申し訳ありません・・・

再販用の背景セットの製作や新作背景セットの製作をしており少し忙しくしていました。
実は、背景セットに使用しているラミネートフィルムが、一時販売休止になり手に入らなくなったので探し回って代替商品に変更したりもしていました・・・

そのためフィルム加工を施した部分の質感が変わり、ちょっとザラツキのある質感になりました。
ですが、ツルっとした質感の前のフィルムより、フィギュアを飾る場合にスベリ難くて良いかもしれません。

再販商品はボチボチとヤフオクに出品しております。
今週の末にも、追加で再販商品の出品を予定しています。



さて、話は変わりますが最近世間を騒がせている、「画像生成AI」を試しておりました。
最新の技術に触れてみるのは楽しいですね。

当方は自分のPCでスタンドアローンで使える「Stable Diffusion Web UI」を使用してみました。
AIモデルは「Stable Diffusion/Waifu Diffusion/Trinart」などを使用しています。
あと、webサービスの「NovelAI」も試しています。(こちらは有料サブスクです。)


いやー、テキストから絵を生成するというのは、思いのほか面白いですね。
自分が思った通りの絵が出来たときには、自分で描き上げた時と同じような達成感がありました。
というのも、AIに絵を描かせるのはガチャを回し続けるのと同じような感じで、とにかく時間がかかります・・・何度も回してもSSRが出てこないガチャ・・・

プロンプトにキーワードを入れてはジェネレートして、納得いかなければキーワードを見直して再ジェネレートを繰り返し、望み通りの絵(SSR)が生成されるのをひたすら待つのです。
(正直、自分で絵が描けるなら自分で描いた方が早いかも・・・)

さて、文字ばかり書いていても仕方ないので、実際に生成した画像をお見せしたいと思います。



こちらの画像は、「Stable Diffusion v1.4」のAIモデルで生成しました。

一見すると、背景セットにそのまま使えそうなクオリティの高い画像に見えます。
まるで、どこかで撮影した写真のようにも見えます。サムネイルサイズなら・・・

ですが、よく見ると分かりますが、道路の縁石が途切れていたり、窓枠がメチャクチャになっている部分があったり、建物の間に青い何かが挟まっていたり、何かが空に浮いていたりとツッコミどころの多い絵になっています。
ただ、街路樹だけはシッカリ描かれている気がします。



こちらの画像は、上の画像と同じキーワードで「NovelAI」で生成しました。

「Stable Diffusion v1.4」に比べると、アニメ風の日本の住宅地の路地といった感じですね。
こちらも、一見するとなかなかのクオリティの画像に見えます。

ですが、こちらも拡大するとツッコミどころたっぷりの違和感のある画像になっています。

この他にも同様のキーワードで多数の画像を出力してみましたが、こちらの画像と同様に雰囲気だけハイクオリティな画像が量産されただけでした。
AIは樹木や植物などの有機的な画像の生成は得意なようですが、どうも無機質で規則性のある建物や機械や文字・記号のようなデザインはかなり不得意なようです・・・




ならば、自然をテーマにした画像なら上手く行くのではないかと思い試した画像がコチラです。

こちらも「NovelAI」で生成しましたが、ほぼ完璧に望み通りの絵が作れました。
ただ、何度も生成しなおしたので時間はかかりました・・・
(ちなみに「Stable Diffusion」だとより実写的な絵がハイクオリティで作れます。)

やはり思った通り、有機的な自然をテーマにした絵は高いクオリティで生成できるみたいです。
それに対して、AIの学習モデルにもよると思うのですが無機質で機械的な絵は、一見するとハイクオリティな絵になりますが細部の緻密さは誤魔化されてしまうようです・・・

現在のところ、AIで無機質で機械的な絵が生成できないのは、機械や建築物や文字・記号を充分に学習していないからだと思われます。
AIの学習に用いられている画像サイトでは、「窓枠」「窓の取っ手」「蝶番」などのタグが無く、細かなデザインのタグも存在しません。
要はタグの無いものは学習できないということです。

これらの問題はタグのある画像サイトの画像を学習させたり、グーグル画像検索でタグを検索し出力された画像から学習モデルデータを作ることで解決することが出来そうです。
ただ、そんなことをするとAIモデルのデータ量がとんでもなく大きくなると思いますが・・・




最後に自分の描いた絵をAIに補正させるとどうなるか試してみました。

左端のキャラクターは、当方の自作ゲームの主人公のラフ絵です。
後々ドット絵にする予定だったので、頭を大きく表情を分かりやすいように目や口を大きく髪形も大雑把にし、体は線の数を減らして女の子らしくお尻を大きくデフォルメしたデザインにしています。

オリジナルの絵に対して、AIで補正したのが右側にありますが、なかなかイイカンジに補正されていますね。
まあ、補正率60%を超えると別キャラになってしまいますが・・・(もはや誰だよ・・・)

あと、少しAIにイジワルをして「右手」と「剣の柄」と「ハンマーの柄」が重なる絵を補正させてみましたが、やっぱり右手はきちんと描かれず曖昧になりました・・・
というか左手もまともに描かれていませんね・・・
手や足の指をAIに描かせる場合には、手の表情をプロンプトから指定してやるとキレイに描いてくれることもありますが、細かく指定しても50%の確率で指の形状が変になります・・・

そういう場合は、「arms behind back」などのキーワードで、手を後ろに回して見えないようにしてやるのが一番ですね。(そもそも手を描かせなければOK。って解決になってない・・・)

・・・そういえば、自分の描いたキャラクター絵をブログの載せるのは初ですね。
(実は当方、少しだけキャラクター絵も描いたりします。主に自作ゲーム用ですが。)



色々とAIモデルを試してみましたが、フォトリアルな絵が得意なのは「Stable Diffusion v1.4」の標準AIモデルで、アニメタッチの絵は「NovelAI」が最も良かったです。
「Waifu Diffusion」「Trinart」や、他のAIモデルも複数試してみましたが、納得できる画像の出力は出来ませんでした。
プロンプトに入力したキーワードが悪かった可能性もありますが、「Waifu Diffusion」や「Trinart」のAIモデルでは絵の画風がアメコミやカートゥーンのような雰囲気になり、日本のアニメや絵師さんの絵柄に近づけるのは少し大変でした。(やろうと思えばできる。)

あと、一人の人間を描く場合は精度が高い絵が作れますが、満員電車や街の人混みのような画像も作れないですね。
複数の人物に対して、個別に服装や髪形を指定することが出来ないので・・・

ちなみに駅のホームで電車を待つポニーテールの女子学生の絵を描かせてみたら、モブのオジサンたちも制服にポニーテールになりカオスな日常風景に笑ってしまいました。
一応、オジサンたちはスーツを着るようにプロンプトで指定していたんですけどね・・・

色々と触ってみて思いましたが、結論から言うと現状の「画像生成AI」は絵師さんの描く絵の精密さには遠く及ばないと思います。

また、AIそのものが新しい絵を創造することも出来ません。
AIは既存の絵を学習しているため、結局のところ既存の絵の模倣に過ぎず、絵の流行やトレンドをAIが作ることはないと思います。

この先、AIがどう進化するかは分かりませんがAI自体には人間と同様の創造性が無い以上、当分の間はクリエイターの人たちにとって代わる存在になることはないと思います。
便利なツールとして使えそうなのですが、著作権など色々と問題もあるようなので、AIの今後の行方を注視したいところです。