Home Artists Posts Import Register

Content

こんばんは、スタジオ真榊です。StableDiffusionwebUIとControlnetのアップデートが同時に来て、またもプリプロセッサの数が増えました!Controlnet画面はすっきり見やすく整理され、タイプごとにモデルやプリプロセッサを一発呼び出しできる大変親切なUIに進化しています。


新しいプリプロセッサの検証も進めているところなのですが、今夜はReferenceOnlyが「マスク部分のみinpaint」に対応した件について紹介したいと思います。これがなぜ画期的かというと、既存の画像の一部を参照(Referene)して、周囲に調和させつつ「移植」できる可能性がでてきたからなんですね。



こちらのイラストは、先日投稿したGRIDMANの六花ちゃんのイラストに、うちの看板娘「更木ミナちゃん」の顔を移植したもの。顔部分を単純にi2iしたのではなく、こちらのイラストをAIに参照してもらい、該当する部分に描き込んでもらっています。


設定によってはキレイに調和せず「切り抜きコラ感」が出てしまうのですが、上手に調和させるコツはなんなのか、他にどんなことができるのか、いろいろ検証してみました。


※今回の実験はControlnetのバージョンが1.1.178以降である必要があります


実験の前提

まずはReferenceプリプロセッサのおさらいから・・・と言いたいところですが、書くべきことはだいたいReferenceプリプロセッサ解説の記事に書いたので、こちらをご参照ください。


新次元のスタイル継承!「ReferenceOnly」の使い道

こんばんは、スタジオ真榊です。アップスケールの概念を覆した「Tile」に続き、新たなControlnet1.1の新技術「ReferenceOnly」が界隈を騒がせていますね。この機能、入力した画像を構成する「スタイル」を読み取って、同じテイストの別のイラストを生成するというものなのですが、特徴の再現力が半端ない。LoRAの代わり...


大事なのは、①「ReferenceOnly」は再現度は低いけど良い感じにまとめてくれる、②「reference_adain+attn」はかなり忠実にスタイルを継承するかわりに融通がきかないーという部分です。


一方、inpaint機能もなかなかややこしく、特に今回使う「マスクのみ」の扱いは理解しにくいので、こちらの記事を参考にしつつご覧ください。


レタッチ(inpaint)機能が理解る!修正&入れ替え徹底解説

こんばんは、スタジオ真榊です。今夜の記事は、image2imageを画像の一部だけに掛けて修正できる「レタッチ機能」についてです!設定値と生成結果が直感的に結びつきにくいので、みんななんとなく体感でなんとかしている(そしてたいていなんとかならない…)のが、このレタッチ機能。いろいろな実験結果と共に、ようやく...


今回の実験でやることは「画像Aの一部を切り抜いて画像Bのマスク部分に貼り付ける」というものですが、貼り付け前と貼り付け先では顔面の大きさや角度が当然違いますし、ただコピペするだけならクリスタやPhotoshopでもできます。あくまで画像AをReference(参照)してもらい、それをお手本に画像Bのマスクした部分を書き直してもらうことができるか?ということですね。


まずは首から上全体の移植、つまり「首のすげ替え」を試し、次に顔の輪郭より小さい「顔面の移植」を試してみることにしましょう。


首から上のすげ替え実験

タイトルが非常に人聞きが悪い感じになりましたが、まずは首から上を替えてみます。画像Aの首から上をBに移植するのですが、ここで思い出したいのはプリプロセッサの特徴の違いです。


「ReferenceOnly」は参照した画像の再現度が低くなるものの、貼り付け先に調和させてくれるのが特徴。「reference_adain+attn」は融通が利かず、左向きのキャラの画像を参照させると左向きの画像ばかりが出力されるのが弱点です。どちらを使うかは、モデルとなる画像Aと画像Bが調和させやすい構図関係かどうかで考えるべきだと言えます。例えば、二つとも同じ方向を向いた画像なら「reference_adain+attn」で再現度高く生成するのがよいですが、馴染まない画像同士をむりに「reference_adain+attn」で合体すると失敗するので、その場合は「ReferenceOnly」を使うことになります。



今回合体させるのはこちらの二枚。顔の向きや構図が全く違うので、「ReferenceOnly」を使うことにします。まずはi2i画面で移植先(六花ちゃんイラスト)の画像を読み込み、すげ替えたい部分(首から上)をマスクします。

マスクが掛けられたら、Controlnet画面を開き、「ReferenceOnly+忠実度0.5」で移植元(ミナちゃんイラスト)の画像を読み込みます。

このとき、Control modeを「My prompt is more important」にすることで、この画像の構図に引っ張られすぎないようにしましょう。この画像よりもプロンプトをより重視して描かせることで、マスク内外の断裂を防ぐ効果があります。


さらに、inpaint先を周囲に調和させるために、MultiContorolnet機能でもう一つControlnet画面を開きます。こちらでは「inpaint global harmonius」「inpaint」を選択するだけで、画像は読み込ませません。


通常のi2iでは、ノイズ除去強度を最強の「1」にするとプロンプトを元にまったくの別画像が生成されてはめ込まれるので、調和したイラストになりませんが、ここでinpaint global harmoniusを使うことで「1」でも貼り付け先と調和するイラストを生成しやすくなります。


さらに重要なのは、inpaint画面の設定。マスクした顔面部分のみを生成してほしいので「マスクの範囲をinpaint」を選択し、i2iのタイプは「元画像」を選択。これにより、ノイズ除去強度にもよりますが、元の六花ちゃんの顔面の配置をi2iする形でinpaintすることが可能になります。

もちろんあえて元画像を参照させなくても良いので、場合によって変更して構いませんが、「埋める」や「潜在空間でのノイズ」は崩壊しやすく、制御が難しいです。


最後にプロンプトですが、マスクされた部分だけに掛かるプロンプトですので、1girl,face・・・から始まるものであればよいと思います。red glassesやblack hairなど、マスクされた部分に描かれるものを描写すれば構いません。胸から下の服装やポーズ、背景など、マスクされた部分に存在しない要素は入れない方が良いでしょう。

今回は以下のプロンプトを使用しました。


1girl, smile,black shiny hair, wearing red glasses, (side ponytail:1.3) with white ribbon,open mouth,purple eyes, masterpiece, masterpiece,extremely detailed CG,official art,high resolusion


生成結果

①ReferenceOnly

さきほどの設定で、ノイズ除去強度を0.3~1.0まで段階的に変化させてみたのがこちらです。(チェリーピックなし一発生成)

ノイズ除去強度が弱いとほぼ元の画像の六花ちゃんですが、「1」に近づくほどにミナちゃんになっていきます。ただ、参照した画像をできるだけ再現しようとしすぎるせいで、「1」に近づきすぎると調和が失われ、自然な画像にならないことが多いです。「0.7」前後がバランスがとれていて良さそうですね。


②reference_adain+attn

今度はプリプロセッサを「reference_adain+attn」に変えて同じ設定で適用すると、このような結果になりました。

「ReferenceOnly」に比べてさらに忠実度をあげようとした結果、うまく周囲に調和させることができなかったことがよく分かります。この2つのプリプロセッサのどちらを選択するか、どのような設定で馴染ませるか、が大きなポイントとなります。


③Referenceさせず

ここで「Referenceプリプロセッサがなくても、プロンプトだけでミナちゃんの顔にできるんじゃないの?」という疑問が湧いてきたので、これも実験しました。Seed値などを固定して画面①(ReferenceOnly)のControlnetをオフにしてみると、このような結果に。

さきほどの画像に比べると周囲になじんでおり、「red glasses,purple eyes」などミナちゃんの要素を入れてあるのでミナちゃんっぽくはなりますが、Referenceをさせていないので、再現してほしいイラストの特徴は引き継がれていないことが分かります。

移植しやすい画像とは?

移植のしやすさや最適な設定は、画像Aと画像Bの「構図の相性」によって変わります。顔面を移植する場合、画像Bは顔周辺だけが描かれた画像のほうがうまくいきますし、顔が画像Aと同じ角度で描かれたイラストの方が望ましいと言えます。例えば、証明写真のように真正面のバストアップ画像から真正面の画像に移植するケースが最も成功率が高いはずです。


・もともと調和しやすいものなら強めの設定(例:「reference_adain+attn」忠実度0.5、ノイズ除去強度0.7)

・融通を利かせたい場合は弱め(例:referenceOnly+忠実度0.5、ノイズ除去強度0.5)


…にしてみるのがいいのではないか、というのが最初の実験で得られた感触です。


顔面だけの移植

こちらは、首から上ではなく顔面だけを塗りつぶして移植したケース。


顔の輪郭はマスクせずに残して、顔立ちや表情だけを参照してもらう形ですね。設定はほぼ同じで、マスクする範囲だけを変えてあります。


さきほどと同様の設定(ReferenceOnly)で、X/Yプロットで実験するとこのような結果になりました。

顔面だけの場合は首から上と違って自由度が低い分、はめこみがしやすいようで、おおむね上手に移植されていることが分かります。こちらはプリプロセッサを「reference_adain+attn」に変えたパターン。

さきほどと違い、参照した画像を強く意識しつつ、破綻せずに取り込めていると思います。「はめ込み先のマスク範囲が小さいと移植しやすいが、大きすぎるとその中でどういった構図を描くかの自由度が上がるため、破綻の可能性が大きくなる」ことが分かります。


AIイラストはどれも顔立ちが同じ「マスターピース顔(ハンコ絵)」になってしまいがちなのが大きな悩みですが、今回の表情移植テクニックを使えば、時間のかかる準備や難しい操作の必要なく、意図した顔立ち・表情を出すことができるかもしれません。特にキャラクターの描き分けと一貫性が重視される漫画制作で役に立つテクニックになることが期待されます。

失敗例:体全体の移植はできる?

次に、以前こちらの記事で試した、背景画像とキャラクター画像の融合を試してみました。

【Controlnet1.1】新モデルをフルに使って試す「写真とイラストの融合」

こんにちは、スタジオ真榊です。皆さんGWの真っ只中でしょうか?賢木は休みでも休みじゃなくてもSDwebUIをめっちゃ楽しんでおります! さて今日はControlnet1.1の全体検証とまとめ記事が一段落ついたのを受けまして、以前のこちらのツイートのように「CN1.1の最新モデルを組み合わせたらどんなことができるのか?」を検...

この記事では、背景とキャラクター画像をそれぞれ別に生成し、単純に画像編集ソフトでコラージュして馴染ませた程度でしたが、これを今回の手法で「移植描き直し」してみるとどうなるでしょうか。


移植先は背景画像、移植元はキャラクター画像。キャラクターを召喚したい場所を塗りつぶして、強めの設定(「reference_adain+attn」忠実度0.5、ノイズ除去強度0.7)で生成します。


結果がこちら。

失敗した理由は明らかで、まず移植先が差し替えるモデルとなる人体がない、純粋な背景画像だったこと。また、移植元画像は背景透過pngでしたが、参照時に透過部分を「白」と参照してしまったため、このような余白が生じてしまっています。大きい範囲同士を合成する場合は、やはり別々に生成して人力マージするのが最も効率よく、また美しい結果が得られると思います。


【重要】やってはいけないこと

最後に注意点を記しておきます。今回紹介したテクニックは既存の画像の要素を参照して再現するものですから、他人の著作物や肖像権などに関わる画像を安易にReferenceさせると、いわゆるi2iパクリやディープフェイクと同様の危険行為・違法行為となりかねません。例えば、公式アニメ画像の顔面部分だけをReferenceさせたり、実在の有名女優の顔をReferenceさせたりといったことをすると、大きなトラブルに巻き込まれかねないので、徹底して自戒・自衛しましょう。PC内に所蔵しておくだけならただちには問題にはならないと感じるかもしれませんが、流出すれば責任を問われることもあります。


とはいえ、やってみれば分かるのですが、このテクニックは画像Aの顔を画像Bに完璧に「コピー」できるほど正確なものではありません。「正面を向いた顔アップ写真→正面を向いた顔アップ写真」のような構図であれば再現度は高いのですが、「キャラの全身イラスト」を参照させてマスク部分に顔だけを描き込ませようとすると、雰囲気を継承できる程度で再現度はぐっと下がります。それでも、他人の著作物をControlnetで読み込むことに忌避感がなくなってしまうことが最も怖いので、あくまで「自分の画像to自分の画像」に限って行うことをおすすめします。


おわりに

6月になりました。5月頭にコロナ陽性になってしまい、そこへFANBOXのAIルール改定というダブルパンチ、さらに後遺症で片耳難聴になってしまうというさんざんな月でしたが、引き続きめげずに更新を続けていきたいと思います。



5月31日に、Pixivの規約&ガイドライン改定が発表されました。AIを使った迷惑行為を列挙し、個別に禁止した良い感じの内容ですが、FANBOXに関しては従前通り「AI生成作品の投稿は禁止」「個別規約は後日改定予定」としか書いておらず、具体的な発効日や禁止ラインについては不透明なままでした。


FANBOXにおいては「AI生成作品の投稿は禁止」であり、AI生成作品とは「制作過程のほぼすべてをAIによって生成した作品のこと」ということは既に明らかになっていますが、スタジオ真榊のFANBOX投稿が「AI生成作品」かどうか考えてみると、


①大半が賢木の書いた文章で構成されており、全体としてAI生成作品には当たらない

②文章はセーフだが、AIを使った生成例として掲載した画像部分はAI生成作品に当たる(投稿内に禁止部分とセーフ部分が混在している)

③AI画像を使用した投稿はどんなものも全て「AI生成作品」になる


・・・のどの判断も考えられるわけです。


個人的には①を主張したいところではありますが、それが認められると例えば大量のAI画像の末尾に長文のポエムを貼り付けただけで「全体としてはセーフ」みたいな詭弁を弄することもできそうですから、実務的には②か③になろうかと予想しています。そうなると、「該当投稿を勝手に下書き状態にするから、再掲載したければAI画像を削除した上でアップしなおせな」ということになりそうです。


FANBOX側が排除したい迷惑行為というのは、FANBOXをクリエイターの支援サイトではなく「AI生成物の大量販売プラットフォーム」として使うことです。スタジオ真榊の活動は直接それに当たらないと考えていますが、「確かに該当しないけど、それらを追い出すためのルールなので、申し訳ないけど去ってください」ということであれば、きちんと従うつもりです。その場合、月途中でもすぐに別媒体に移れるよう準備を整えております。


もちろん、支援した方が移転に伴って二重払いしなくてはならないとか、6月分を支援したのに移転後は誰でも読める状態で払わない方がよかった・・・みたいな不利益が生じないように万全を尽くしますので、どうぞご安心ください。


それでは、今月もどうぞよろしくお願い致します!スタジオ真榊でした。


Files

Comments

myloin

最後の注意点を記載するのは素晴らしいことだと思います。  ごく少数ですが、SDを利用している方で、I2IなどAIを通せば著作権侵害に当たらないと誤解されている方がいるので、そういった方が減っていくように願っています。 (どんな技術でも人を殺したら有罪であることは理解できるのに、AIで著作権侵害するのは無罪と考えてしまうのはなぜだろう?)

スタジオ真榊

やっぱり「AI画像に著作権はないらしい」「AIに何を学習させても合法らしい」「AIを通せば著作権侵害にならない」という誤ったイメージが初期に蔓延したことが原因かなと… 「どんなモデルを選ぶか」「どんな方法、用途で使うか」「生成した画像に客観的問題はないか」の3段階に分けてそれぞれ別のリスクがあることは折に触れて書いていきたいなと思ってます。誤解されがちなんですが、出自が生成物を浄化することはないんですよね。

myloin

>誤ったイメージが初期に蔓延したことが原因かなと…  真榊氏を始めとして様々な方が著作権について解説してくださっているので、SDを使った誤用はかなり減ってきたのですが、逆に今では、初期の「誤ったイメージ」をAI反対派の方々が利用して攻撃のロジックとして使っているんですよね。。AIは著作権侵害の道具だとかなんとか…  もちろんこういう方も少数ですが、それを信じてしまう一般の方々もまだまだ多くて、早く正しい認識が伝わって、胸を張って公にSDを使える日が来てほしいものです。逆風の中、誤解の解消に貢献している真榊氏を尊敬しています。(私は疲れてしまった笑)