社内発表で『AIによる画像生成勉強会』を開催しました!
この記事は『ドワンゴ Advent Calendar 2022』 23日目の記事です。
社内発表で『AIによる画像生成勉強会』を開催しました
こんにちは、動画コアシステムセクションのkadoyauです。 自分の趣味であるお絵描きにソフトウェアを生かす技術探求が本稿のテーマです。
2022年8月ごろからTwitterで画像生成AIを使った作品が話題になりました。 画像生成AIの研究の歴史を知らずに外から見ると、生成されたイラストは大変インパクトがある結果に思えました。 しかし、Twitterで話題になることはえてして誇張されがちです。 これらの技術がどこに限界点があるのか実際にやってみなければわからないと考え、画像生成AIを創作に活用するという観点で試行錯誤していました。
その試行錯誤を社内発表した一部を本稿で公開いたします。 未来を考える参考になれば幸いです。 (10月時点での発表内容です。画像生成AIは目まぐるしく進歩しており、現在の状況とは異なることがあります)
この記事の要点
- 絵を描いたことがない人でも、キャラクターイラストの「ぱっと見良い1枚絵」を作れるようになりました
- ただし、成果物のコントロールは時間がかかりました
- 漫画やCG集のような複数枚で一貫したキャラクターが要求される作品や、自分がイメージしている自由自在な構図を出すことは現状困難です
- 実際のイラストを作成する試行錯誤のプロセスを公開します
- どのような制作スタイルでも活用できる(効率化・上達の助けになる)余地があると個人的に感じました
- モデルはStable Diffusion v1.4およびNovel AI Diffusionを利用しました
本稿で対象にしないこと
- 原理の説明は割愛します。詳しく学びたい方はStable Diffusion を基礎から理解したい人向け論文攻略ガイド【無料記事】が解説と文献リストとしておすすめです
- 試行錯誤の過程の共有ですので、実際に自分で画像生成AIを動かしたことがある方は、得るものは少ないでしょう
- 著作権の問題は複雑かつ判例もあまりないようですので、専門家の解説をご参照ください
利用する画像生成AI
本稿では次のモデルとサービスを利用します。
- Stable Diffusion v1.4(モデル)
- 2022年8月22日 Stability AI社がオープンソースのモデルStable diffusionがpublic releaseしたモデルです
- Stable Diffusionは多くの派生モデルを産んでいる大元なのでベンチマークとして採用しました
- NovelAI Diffusion(Webサービス)
- 2022年9月25日 小説投稿サービスNovel AIの一部として公開されたキャラクター特化画像生成AIサービス
- NovelAI Diffusionはキャラクター生成の品質が高いWebサービスで、キャラクターに特化した場合の例として選択しました
上述のサービスの他に、Dalle-2、ERNIE-ViLG、TrinArtなどさまざまな画像生成AIがありますが、作風、UI、できることなど実際には触らないとわからないことだらけです。
画像生成AIでできること
画像生成AIの出力結果を紹介する前に、ざっくりとできることを知っておくと良いです。
- Text to Image
- 文章から画像を生成します
- 文章(プロンプト)→画像
- Image to Image
- 画像をベースとして修正することや、AIに大幅にイマジネーションを働かせてもらえます
- 文章(プロンプト)+ 画像→画像
- イマジネーションを働かせた作例
- inpainting
- 画像 + 文章→画像
- 画像の一部だけ書き換える
- 参考
- outpainting
- 画像から存在しないところを生成します
- 画像→画像
- 参考
本稿ではText to ImageとImage to Imageを実際に利用します。
Text to Imageでキャラクターを描いてみる
試みとして、ニコニ立体のマスコット・キャラクターであるアリシア・ソリッドちゃんを画像生成することにします。
このキャラクターデザインを再現するのを挑戦してみます。 アリシアちゃんを見て、次のような特徴が思い浮かびました。
- 金髪のロングヘアー
- 黒いリボン
- 青い目
- 白と水色のボーダーのロングソックスを履いている
- 巨大なペンをもっている
- 上着は特殊で言葉が思い付かない…
これらの単語を組み合わせて次のようなプロンプトを作成します。
Blonde-haired, blue-eyed girl with a huge pen and a big black ribbon on her head. She wears a white mini skirt and a light blue and white striped knee socks.
このようなプロンプトを使って画像を生成すると、次のような結果になりました。
Stable diffusionの場合
…Twitterでみたようなよくできたキャラクターイラストには全くなりませんでした! プロンプトに"anime"を加えると、アニメ調になりました。
NovelAI Diffusionの場合
キャラクターに特化したNovelAI Diffusionでは同じプロンプトでもこれだけ結果が変わります。
まとめ:Text to Imageの使い所
Text to Imageを使ってアリシア・ソリッドちゃんを描こうと試みた結果、次のことがわかりました。
- 想像したイラストをプロンプトで正確に指定するのは困難
- 人間相手でも難しいので、当たり前といえば当たり前の結果に
- 補足
- ただし、有名キャラクターは比較的出やすいようです
- プロンプトを追及することでクオリティアップができます。語順やネガティブプロンプトといったテクニックが多々ありますが追求には時間がかかるので割愛します
- 具体的なイメージがないものには有効そう
- アイデア出し、模索
- 例
- 金髪キャラ
- 甲冑を着たキャラクター
しかし、作品作りでは、ある程度具体的に指定したいことがあります。例えばこんなときです。
- 構図、レイアウトや色を指定したい
- Text to Imageで作った画像をもとに、細部を変えたい
そのようなとき、画像で指定できれば便利です。それを実現できるのがImage to Imageです。
Image to Imageでカラーラフを仕上げてみる
以下のようにカラーラフを用意します。
これを画像生成AIを使って完成させてみます。 イメージ通りになることを期待するように、キャラクターを表す単語を検討します。
- 青い瞳
- 長い茶髪
- 赤と白のストライプの水着
単語から以下のようなプロンプトを用意し、生成します。
A girl with blue eyes and long brown hair. She wears a red and white striped swimsuit.
Stable diffusionの場合
strengthというStable Diffusionのパラメーターは高いほど入力した画像よりプロンプトが重視されます(AIが自由にかくということです)。 どの程度きくのか確かめるため、いくつかのパラメータで出力結果を眺めます。
いずれにしてもそのままで使える品質のものは生成されませんでした。 特に腕の生成品質が低いように見えます。これは元のデータセットであるLAION-5Bの品質がさほど高くないことに起因しているらしいです。 プロンプトの工夫の余地がありますが、それをつめるためには時間がかかります。 そこで、生成された画像の一部を利用してコラージュ(羅生門)する方針に切り替えました。
コラージュした画像を元に、再度画像を生成して取れるパーツを探していきます。
背景も生成します。次のような背景を作成したいです。
- 青空・海・砂浜があり
- キャラが真ん中に立つから、両脇に木 これから以下のようにプロンプトをつくり、画像を生成します。
tropical paradise beach, beautiful magical palm trees on both sides. blue sky and azure sea water. sun illuminates the coast beach and the ocean, cinematic view, epic sky, detailed, concept art, low angle, high detail(略)
そして生成した画像をまたコラージュします。
雑に撮影処理をして、完成とします。
完成までは遠いですが、この程度のビジュアルでもたたき台としては使えることがあります。
NovelAI Diffusionの場合
キャラクターが得意なNovelAI Diffusionは、同様のプロンプトでもキャラクターが明らかに高品質に出力されます。
そのまま使えると判断できたため、今回はコラージュをする必要はありませんでした。
同様に背景を作成し、撮影処理をします。
制作時間はラフを描く時間を除いてStable Diffusionの場合が1時間程度、Novel AI Diffusionの場合が15分程度でした。試行錯誤する過程が多ければ多いほど時間がかかってしまいますね。 また、慣れればもっと早くできます。
まとめ:Image to Imageの使い所
- カラーラフを元に画像を生成し、気に入ったところをコラージュすることで画像を生成できました
- image-to-imageを繰り返すことで絵をクオリティアップできることがわかりました
- この路線を真面目に追求したワークフローが提案されています
- AIのモデルによって最適なワークフローは変わりそうです
画像生成AIを制作に生かす方法の考察
作品づくりでの活用Tips
- 既存概念の合成
- キャラクターのバリエーション出し
- Image to Imageで写真からアイデアを出してもらう
- 写真にプロンプトを追加したものですが、AIは写真をいい感じに解釈してくれます
- 自分の絵を添削してAIの表現をまねる
- 自分の絵をimage-to-imageで変換
- AI生成した良さそうな表現を取り入れて自分で加筆
- Novel AIは最近流行りの画風を出す傾向がある性質を利用
- 例:https://twitter.com/emokakimasu/status/1580114588468531200
画像生成AIが現状で苦手なこと
- 手先、足先をうまく描けない
- 私も苦手ですが、AIの場合は指が複数になったりします
- 3次元形状の一貫性が崩れる
- 物体が重なっている場合、後ろの物体の3次元形状がよく破綻します
- 画風の指定は難しい
- Image to Imageでラフを完成させるという用途の時に、AIの絵柄に寄せられてしまいます
- 同じキャラクターの別の構図を描くのは難しい
- 似せて出力しようとしても、画風や制服の意匠が変わってしまいます
- 小物の細かい絵を一発で出すことはできない
画像生成AIの得意・不得意が理解できれば幸いです。
株式会社ドワンゴでは、様々なサービス、コンテンツを一緒につくるメンバーを募集しています。 ドワンゴに興味がある。または応募しようか迷っている方がいれば、気軽に応募してみてください。