こんばんは、スタジオ真榊です。今回は、普段趣味で作っているファンアートを例に、AIイラストの着想から生成、仕上げまでの現在のワークフローをまとめようと思います。

少し古い特集ですが、AI漫画を作ったときに備忘として書き留めておいたこちらの記事に、先日こんなコメントを頂きました。 (ありがとうございます)

【#ワークフロー紹介】AIイラストの着想・工程・生成・仕上げ(2025.5.31 "Holiday"):図版1

記事を自分で読み返してみると、当時の技術で苦心して作り上げている感じが伝わってきてなかなか感慨深かったのですが、初めて記事を読む初心者の方には、最新の技術ではないやり方を紹介する形になってしまわないかと少し心配になりました。AI技術はあっという間に進歩しますし、どういう狙いの絵を作るかによっても最適なワークフローは変わります。そこで、自分の現在のAIイラスト作りについて、考えや工程をできるだけ定期的に記事化していくことにしました。

※二次創作でマネタイズする格好になってしまってはいけないので、SNSで全体公開しているイラストへのリンク以外の画像には、キャラクターが判別できない程度に加工を施した上で掲載しています。見にくくて恐縮ですが、ワークフロー紹介が目的の記事という趣旨をご理解頂ければ幸いです。

1.着想

今回紹介するのは、スレミオの休日を描いたこちらのAI絵です。

これは、元々の着想としては漫画にすることを考えていた一枚です。現代のパリのオープンカフェでひとり街を眺めていたスレッタが、石畳の坂を大きな買い物袋を抱えて歩いていくミオリネにふと目を留めて…といった、洋画のワンシーンのような想像をしていました(2人は全くの初対面というパロディ設定)。そこから話の筋がふくらまず死蔵していたのですが、そういうオシャレな絵になんとなく憧れがあり、何かの拍子にビートルズの「アビイ・ロード」の写真と結びついて、スレミオのアビイ・ロードを作ってみようということになりました。

着想はほぼ完成形が脳内に浮かぶケースと、概念としてのアイデアしかまだ浮かんでいないケースがあります。前者の場合は、完成までの最短経路を考えることになりますし、後者の場合はとりあえず生成してみて、アイデアが具体化していくかどうかやってみることが多いです(うまくまとまらなければボツ)

例えばこちらのイラストなどは後者で、2人がどのキャラのどのセリフをどんな表情で話したら面白くなるかを何通りも試して、1コマ目がフリ、2コマ目がオチになるような組み合わせを工夫しました。

一方、今回紹介するイラストの方は始めから完成品そのものの情景がほぼ念頭にあり、「横断歩道を幸せそうに連れ立って歩く休日の2人」「買い物帰りなので、左から右へ進んでいくアビイ・ロードとは逆に、右から左へ戻っていく」「大きな買い物袋を2人とも抱えている」という形でほぼ固まっていました。作る過程であとから決めていったこととしては、2人が横断歩道上でどう並んでいるかとか、服装や表情、天気や背景の細部、買い物袋の中から何がのぞいているか、といったところです。

2.ワークフロー概要

こうした着想を、どのような手順で仕上げるかがワークフローの中身ということになります。このところの基本的なフローは、「背景とキャラクターをそれぞれ別々にt2i生成し、ポーズの案出しやアップスケール時にしっかりガチャをして高品質にした上で、手作業で一つにまとめ、光源やカラーリングをしっかり画像編集する」というもの。ポーズなどの条件が厳しく、プロンプトでのt2iが難しい場合は、Controlnetやインペイントを使って時間を掛けて作ることになります。

・キャラは白背景が基本

背景と前景(キャラ)を同時に生成すると、どうしても破綻が大量に出てきてしまいますし、位置や光源、カラーなどを後からそれぞれにコントロールすることが難しくなりますので、いったんキャラを白背景で生成して切り抜くことが多いです。その上で、前回紹介した下図の例のように、自分で背景を簡単に描いてしまうのも楽しいですね。

生成画像の白背景部分を選択削除し、ピンクの背景を新たに描き足した例

   ▲生成画像の白背景部分を選択削除し、ピンクの背景を新たに描き足した例

今回は抽象的な背景ではなくちゃんとした風景を生成するので、破綻が目立たないよう特に気を付ける必要があります。

・ガチャは着想をしっかり固めてから

いわゆる「ガチャ」に関する考え方についても少し触れておきます。t2iでたくさん画像生成をして一番良さそうなものをチェリーピックするやり方は、ある意味AIの基本ですが、偶然出てきたものを自分のセンスかのように見せる不誠実さがつきまとうところが気になり、当初はあまり好きではありませんでした。現在は少し違う考えで、はじめに構図や作品意図をきちんと着想として固めた上で、「その枠組みの中でしっかりガチャをして、一番自分の理想に近いものを選び取る」のなら、むしろ誠実な制作態度だと感じるようになりました。

3.使用モデルについて

ローカル生成に使用したモデル(checkpoint)についても書いておきます。

最近使用しているモデルは、illustrious系で6番目に作ったオリジナルモデル「iostrious v6」というもの。フラット塗り・まんまる目で、色トレス(※色つきの線画)された淡い色合いが特徴のモデルです。civitaiで公開されている複数のモデルをマージして好みの絵柄に寄せたのち、下図の画像ペアをもとに差分抽出したCoppyLoRAをマージするやり方で、好みの画風に調整しています。

下の段が目標とする画風。上の段はそこから大きく離して同じものを描いた画像。

▲下の段が目標とする画風。上の段はそこから大きく離して同じものを描いた画像。

    2枚の差分を取ると、下の段の画風を覚えさせることができる

iostrious v6はこのほか、塗りのフラットさや線画の太さをコントロールするLoRA、髪の毛のハイライトや指の描写を好みに寄せるLoRAなどなどを強弱を付けてマージすることでできています。そうしたLoRAはCivitaiなどで入手することもあれば、過去のモデルから蒸留したり、自作したりしたものもあります。

※2枚の画像ペアを用意して差分をCoppyLoRAにし、好みの画風のモデルを作るやり方については、これまで何度か記事にしています。こちらの記事などをご参照ください。

4.キャラクター生成

さて、ここまでが頭の体操で、ここからが実際の制作パートです。今回必要なのは「手前に横断歩道のある一点透視の現代風の背景」と、「背景と画角やパースが矛盾しないスレッタ・ミオリネそれぞれの白背景のイラスト」ということになりました。着想時点で念頭にあったのは、フランスパンがのぞく大きな袋を抱えたミオリネが歩いて行く場面でしたので、まずはミオリネの白背景のイラストを生成してみることにします。

本来は背景を先に作った方が整合性を取るには良いのかなと思いますが、まずはメインモチーフであるキャラクターを見てみないとイメージが膨らみませんし、キャラが見たい一心でAI絵をやっているわけですからね。プロンプトは何度か試しながら、以下のように組みました。

PP:1girl,miorine rembran,white hair,short hair,white shirt, dot pupils, flat eyes,smile,empty eyes,(tsurime:1.3),sanpaku,original,white eyes,black dot pupils,long sleeves,skinny,from side,boots,green long skirt,walking,carrying bag,paper bag,bread,masterpiece,best quality,amazing quality,general,looking ahead,wind,(white background, simple background:1.3)

公式絵の模倣ではなく自分の中の理想のミオリネさんになるように、さまざまな容姿タグを使って調整しています。太字部分が行動に関わる部分。(white background, simple background:1.3)は、普段からよく使うタグ群として登録してあります。強めないと背景が白くならないことがあるため、1.3強度にしています。

iostrious v6を使い、このプロンプトで生成すると、例えば下図のような画像が出力されます。(1408x1024px、スケール5、ステップ20、サンプラーEuler a)

「holding_paper_bag」だと、紙袋を手提げにしてしまうことが多かったので、胸元で抱きかかえてもらうように「carrying」を採用しました(それでも失敗多し)。こういうタグ探りはdanbooruで似たシチュエーションのイラストをいくつか見て、どんなタグがついているかを観察するのが早いです。カメラでなく前方を見てほしいので「looking ahead」も入れています。「wind」は風というより、髪やスカートがたなびいて歩いている感じが演出される狙いです。

・ガチャと品質アップについて

ここまでは単に最適なプロンプトと絵柄を探っているだけなので、低ステップでアップスケールも何もせず、4枚生成をひたすら繰り返しています。ここでしっかりガチャをしてたくさんのミオリネさんを眺めているうちに、「windを入れて髪をなびかせよう」とか、「足元はブーツが似合いそうだな」といった感じで自然に改善点やアイデアが湧きますので、少しずつプロンプトを調整していきます。

ほぼ理想通りの図案ができたら、そのプロンプトとSeed値で、ステップ数を30前後まで増やし、ADetailerとHires(高解像度補助)をON。さらにバリエーション生成を使ってより細部を整えるということをします。

この工程を挟むことで、よくある指の数のミスなどはこのタイミングで大部分排除できます。ほぼ同じ絵を見比べて間違い探しのようにチェリーピックするわけですから、細部のミスに着目しやすいメリットもあると思います。

※バリエーション生成についてはこちらの記事にまとめてありますので、あわせてご参照ください。

プロンプトだけではどうしても制御できず、意図しないものがたくさん出てきてしまう場合は、もう少し手間の掛かる作業工程になります。例えば失敗した画像を線画レベルで加筆修正してAnytestしたり、余計な部分をPhotoshopの生成塗りつぶしで消してimage2imageしたり、もしくはキャラクター容姿を安定再現できるLoRAをしたり…といったやり方です。

今回はそれほど苦労せず、楽しそうに歩いている休日のミオリネさんを表現できましたので、次の段階に進みます。

・スレッタの生成について

スレッタ(赤い髪の女の子)もタグは同様です。ミオリネさんのプロンプトを組んだ際に紙袋を持ち運ぶためのタグができているので、それを少し改変するだけできれいに生成できました。

ちなみに、2人の服装についてはカラーの取り合わせをいろいろ考えて決めています。髪色が紅白で良い感じの取り合わせなので、ビタミンカラーのスレッタと色彩の薄めなミオリネさんで対比しつつ、ロングスカートでちょっと落ち着いた大人らしい休日感を演出することにしました。ミオリネさんはもともとグリーンやブルーなど寒色系のカラーが似合うデザインなので、よくグリーンを使います。