こんばんは、スタジオ真榊です。前回に引き続き、Google最新の画像生成AI「NanoBanana」の検証をお届けしていきます。今回は線画の着色や背景生成など、手描きイラストの工程にnano bananaをどのように活かすことができるのか、できることとできないことの境目を探ってみたいと思います。
前回の特集では20近くの各種検証を行い、だんだんとnano bananaの得意なこと、不得意なことが見えてきた感触があります。特に、convert 〇〇やchange 〇〇といったプロンプトを使って入力画像を変容させる場合に、上手に指示できると従来モデルでは不可能なレベルの画像編集ができることが分かってきました。
今回の検証に使うのは、こちらの線画。前回の特集で得られた知見を踏まえて、再現性の高いプロンプトを使うと線画から完成までの工程をどれくらい助けてもらえるのかを、より実践的な手法を探りました。今回もNanoBananaの実力ができるだけそのまま伝わるよう、生成失敗した場合に黙ってガチャをやり直したりはせず、失敗した結果とリカバリーのやり方を追っていきたいと思います。

上の線画はご想像の通り、手元にあったミナちゃんのカラーAI絵をNanoBananaに渡し、「Convert to line art.」と指示して得られたものです。この線画を題材にしてあれこれいじっていくのですが、まずその前段階として「従来の線画抽出はどれくらいの品質でできたのか?」「nano bananaによる線画抽出はそれに比べて便利・高品質と言えるのか?」というところから検証を始めたいと思います。

1.従来の線画化手法をおさらい
AI絵は本来、ラフや線画段階をすっ飛ばして、絵が描けない人でもいきなり完成段階近くまで高速・大量に生成できることがメリットです。ただ、ポン出ししたそのままの画像はどんなに高品質に見えても、意図がこもらないとつまらなさが生じてしまいますし、漫画やサイト素材、記事サムネイルを作るなど一定の目的を果たす画像が必要な場合には、どうしても順を追った作業が必要になります。そこで、今回は線画から最終的な記事サムネイルに至るまでの作業をNanoBananaと一緒に追ってみて、役に立つ部分・立たない部分をあぶりだしていきたいと思います。
線画抽出にはさまざまなやり方がありますが、スタジオ真榊ではこれまで、「①画像編集ソフトを使う」「②CNプリプロセッサを使う」「③画像生成で高品質な線画を生成する」の3つの手法を主に紹介していました。(下記記事参照)
①画像編集ソフトで線画抽出
そこまで線画の品質(拡大したときのジャギー感など)にこだわらない場合は、PhotoshopやClipstudioの画像編集機能で済ませてしまうのが早いです。色調補正機能でコントラストをはっきりさせて線画部分を濃くしたあとに、Photoshopなら「フィルター▶フィルターギャラリー▶コピー」でディテールと暗さの数値を調整することで、線画のみを抜き出すことができます。

あとは「イメージ▶色調補正▶諧調の反転」で白背景にすれば線画にできます。必要に応じてレベル補正などでコントラストや明暗を調整しましょう。

この手法は非常に手軽ですが、影やしわのアウトラインなどもどうしても拾ってしまうので、その後の使い勝手があまりよくありません。Controlnetで線画を指示して着色したいときなどに使うことが多いかなと思います。

ちなみに、線画の白い部分を透過させたい場合は、クリスタの「編集▶輝度を透明度に変換」で一発です。Photoshopにはこの機能がないので、色域選択機能で白い部分を選択▶削除したり、レイヤーマスクを使ったりする方法で透過する必要があります。

②プリプロセッサで線画抽出
Photoshopなどがない方は、ローカル画像生成で線画抽出を行うことができます。Controlnet機能には、CNモデルに画像を入力する前に「前処理(PreProcess)」を行うプリプロセッサというものが各種ありますが、線画を継承するLineartモデルに読み込ませるためのプリプロセッサを使えば線画抽出を行うことができます。
やり方はControlnet画面で線画化したい画像を入力し、プリプロセッサで「lineart_realistic」を選んで「💥」マークを押して少し待つだけ(初回は読み込み時間あり)。こうすると、画面右側に白黒反転した線画が出力されます。出力された画像は、右上の「↓」ボタンからDLできます。

このとき画面下部の「Resolusion(解像度)」を2048pxにしておくと、幅2048pxで線画化してくれるので、より高精細な線画化が期待できます。「Lineart anime」などのプリプロセッサも、テイストは変わりますが線を抜き出してくれますので、比較してみるとよいでしょう。
こちらはLineart realisticプリプロセッサで抽出したもの(階調反転済み)。やや色合いが薄いので、レベル補正などでくっきりさせるとよいでしょう。Photoshopより線が均等な太さで抽出できていますが、やはりこちらも影のアウトラインを線画として認識しています。

③Controlnetで線画抽出(線画生成)
影のアウトラインを拾わず、より品質のよい線画を求める場合、Controlnetを使って線画抽出をする方法があります。元画像と重なる「より品質のよい線」を新たにつくるわけですから、厳密には抽出ではなく「線画の生成」になります。
・線画抽出用プロンプトを組む
まず、これから生成したい線画に必要なプロンプトを記述します。手打ちするのは大変なので、LoRA学習のときと同様にWD1.4タガーを使ってもよいですし、img2img画面でこのように線画画像(プリプロセッサで作るのが楽です)を読み込んで、生成ボタンの下にある段ボール型のボタンを押すことで簡易抽出もできます。

ここでは「1girl, :d, bangs, hair between eyes, hair ornament, hair scrunchie, holding, holding phone, jacket, long sleeves, looking at viewer, monochrome, open mouth, phone, pleated skirt, ponytail, sailor collar, school uniform, scrunchie, serafuku, skirt, smile, solo, sunazuka akira」というタグが抽出されました。段ボールボタンでの抽出はごく簡易的なものなので、本がスマホに誤認され、キャラクターが既存の版権キャラと取り違えられてしまっています。それぞれ削除するか書き直しましょう。
ポイントは、実際の画像と違うタグがないか(こっちを見ていないのでlooking at viewerは誤検出)、red eyewearやgreen hairといった色のタグがないか確認すること。これから白黒の線画を抽出したいので、カラー関連のタグがあると失敗してしまいます。
さらに、モノクロ画像ではなく線画にしたいので、線画化に特化したLoRAを使用します。ここでは月須和那々さんの「sdxl-lineart_11」(リンク先のsdxlフォルダ内にあります)を使いますが、Civitaiで「lineart」で検索してもいろいろな線画化LoRAが見つかるかと思いますので、好みの線のLoRAを探しましょう。
LoRAのトリガーワードとともに、白黒線画であることを下記のように強調すればOKです。
PP:1girl, :d, bangs, hair between eyes, hair ornament, hair scrunchie, holding, holding book, jacket, long sleeves,monochrome, open mouth, phone, pleated skirt, ponytail, sailor collar, school uniform, scrunchie, serafuku, skirt, smile, solo, monochrome,lineart,white and black,<lora:sdxl-lineart_11:1> (white background,simple background:1.3)
・白画像をimg2img
そうしたら、このような真っ白な画像を用意しておき、同じimg2img画面で読み込みます。txt2imgで生成しても良いのですが、白画像をimg2imgすることで、より背景を白く、線画部分をくっきりとさせられる効果があります。
white
配布ファイルは支援者向けです。元記事で確認
CN画面では、このように抽出したい画像を読み込み、プリプロセッサ「なし」でAnytest v4に入力します。







