← Back to スタジオ真榊

Pixiv Fanbox

インペイントが理解る! NovelAIv4.5 vs Noobaiインペイント

Published 07/09/2025, 09:52:20 PM · Edited 04/11/2026, 02:42:12 AM

インペイントが理解る! NovelAIv4.5 vs Noobaiインペイント

こんばんは、スタジオ真榊です。この記事は、2025年夏時点の最新環境におけるインペイント機能の活用法をまとめた大型特集です。NovelAIとローカル環境それぞれにおけるインペイントの基礎知識と使い分け方を始め、この機能を活用することでどんな表現ができるかを、具体的な操作方法とともに検証しています。一年前に公開した「インペイントが理解る!」の全面改訂版ですので、見比べるとこの一年のインペイント技術の進化が見て取れるかと思います。


「NovelAI V4.5 full最速レビュー」の際はまだ実装されていなかったv4.5版のインペイント機能が2025年6月19日に解放されましたので、その性能検証も兼ねています。v4.5版インペイントとローカル最強の「Noobaiインペイント」の使い勝手を比較しながら、効果的な組み合わせ方なども検討しています。

インペイントはアップスケールと並んで、できるだけ早く使いこなしたい重要機能。ありふれた「いかにもなAI絵」から脱するには、的確なインペイントができるかどうかに掛かっていますので、ローカルとNAIそれぞれについて詳しく解説していきたいと思います。



目次

インペイント機能はなぜ重要なのか

  ・LamaCleanerとの違い

インペイント機能の種類

①NovelAI4.5インペイント

  ・NovelAI4.5インペイントの使い方

  ・フォーカスインペイント

  ・フォーカスインペイントで「疑似ADetailer」?

②Noobaiインペイント

  ・Noobaiインペイントの使い方

  ・Controlnetを使わないインペイントもある

  ・Noobaiインペイントは範囲外も微妙に変化する

NAIv4.5インペイントとNoobaiインペイントの違い

  ・NAIの強みは「手軽さ」と「便利さ」

  ・Noobaiインペイントの強みは「いつもの感」と「拡張性」

  ・Anytestとnoobaiインペイントの併用

  ・小括

Inpaint Anythingで自動マスク

インペイント実践編 V4.5 vs Noobai

 ①キャラクター差分

 ②ポーズ変更+表情変更

 ③背景変更

 ④アウトペイント(存在しないキャンバス外の生成)

 ⑤部位の修正

 ⑥既存画像へのキャラクター追加

 ⑦イラスト同士の合成

終わりに -文脈を盛るインペイント-


インペイント機能はなぜ重要なのか

まず、そもそもインペイントとは何か、なぜマスターすべきなのかについて簡単に触れておきます。

インペイント機能は、手元にある画像(AI生成物に限りません)の一部を範囲選択し、そこに新たに生成した画像を上手にはめ込む機能です。黎明期は境目がうまく馴染まず、不自然になってしまうことも多かったのですが、最新環境ではかなり自然につなぎ合わせることができるようになっています。

         ▲選択範囲が再生成され、自然につながる


選択した部分に新しいプロンプトを与えて再生成できるので、6本指などの破綻を直すだけでなく、上の例のようにポーズを変えたり、表情や服装を変えたりすることも可能。「不自然な部分を描き直す」「不都合な物体を消す」を基本として、「表情を変える」「ポーズを変える」「衣装を変える」「背景を変える」「キャンバスを広げる(存在しない続きを描く)」など多数の使い道があります。


画像生成はキャンバス全体を一発生成する都合上、細かな部分はどうしても破綻が起こりがち。特に、カメラが「引き」になると、目や指といった細かな部分や、背後のモブキャラなどの描写は甘くなりますし、文脈上意味不明なオブジェクトが現れたりします。インペイント機能を使ってこうした描写の甘さを手軽に直せるようになると、作品のレベルが一気に上がります。

インペイントを使いこなせるようになると、単に間違いを直すだけでなく、文脈の感じられる小物やポーズ、表情なども作り込めるようになります。これは、AI絵の不自然さの大半がキャンバス全体を一発生成していることに起因しているから。「誰にでも作れるありふれたAI絵」を脱するのに、インペイントのマスターは不可欠と言えます。


・LamaCleanerとの違い

よく似た機能として、いわゆる消しゴムマジック的な機能「LamaCleaner」があります。こちらは塗りつぶした部分のオブジェクトを「ぱっと消す」機能で、塗りつぶした部分に新たな物体を描き込むようなことはできません。LamaCleanerはごく簡易な機能ですので、インペイント機能の性能向上によって使う場面は少なくなってきています。


インペイント機能の種類

2025年夏現在、使いやすく高機能なインペイント手法としては、NovelAIv4.5インペイントとNoobaiインペイントの2種類があります。この二つを両方使えるようになっておくと非常に表現の幅が広がりますので、順番にやり方を紹介していくのですが、その前にPhotoshopのインペイント機能である「生成塗りつぶし」について簡単に触れておきます。


・Photoshopの「生成塗りつぶし」

「生成塗りつぶし」は、adobeが自社製の画像生成AI「Firefly」をPhotoshop上に実装したツール。範囲選択ツールを使ってレタッチ(修正)したい場所を囲い、「生成塗りつぶし」ボタンを押してプロンプト指示することで、その範囲をAIコンテンツで塗りつぶすことができます。


ただ、これはどちらかというと写真のレタッチ向けの機能。Fireflyはイラストより実写調の画像をメインに学習しているためか、イラストの一部を選択して新しい要素を描かせようとすると、不自然にリアルなものが出てきやすいです。

▲Photoshopを使い、運動靴を「黒い革靴」に描き直した結果。イマイチなじまない


生成塗りつぶしが役立つのは、LamaCleanerのように、キャンバス内にどうしても混じってしまう余計なオブジェクトを消したいときです。例えばドアを開いた主観図が出る「pov doorway」タグを使うと、下図のようにドアの蝶番がだいたい破綻するのですが、このように範囲選択して、プロンプト空欄で「生成塗りつぶし」をすれば…


このように破綻部分を消して、周囲と自然につなげることができます。一回につき3つ候補が生成されるので、その中から一番自然にできているものを選べばOK。うまくいかないときは範囲選択をやり直しましょう。

ちょっとしたオブジェクトを削除したいときはこれが一番早くて便利ですが、「消す」以外のことをやろうとするととたんに馬脚を現すことが多いのでご注意ください。手軽で便利なツールではありますが、高額なAdobe税(サブスク料金)を支払わないと使えない点もネックの一つと言えるでしょう。


①NovelAI4.5インペイント

さて、まずはNovelAI4.5を使ったインペイントから解説していきます。NovelAIのインペイント機能の優秀さが印象づけられたのは、2023年11月に公開された「V3」から。特に細かな設定値をいじらずとも、意図した通りの自然な仕上がりになりやすかったことから、普段NovelAIで作品作りをしていない人にも便利な修正ツールとして広まりました。

その後、「V4」「V4.5」と着実に性能がアップしており、NovelAI自体の学習の幅広さと相まって、個人的にはAIイラスト作りには欠かせない存在となっています。


・NovelAI4.5インペイントの使い方

「参照用画像を追加(任意)」ボタンからインペイントしたい画像を選び、「描いてマスクを追加する」ボタンを押すと、インペイントする範囲を入力する専用画面が開きます。


あとはキャンバス上で描き直したい部分を塗りつぶすだけです。ここでは、6本指になってしまった右手をマスクしてみます。

右下のアンドゥ・リドゥボタンを使いながら、変更したい部分を範囲指定しましょう。ブラシのサイズは左上から調整でき、ペン先を真四角から円に替えることもできます(square brushボタン)。大きく塗りすぎた場合は、左下の消しゴムボタンで選択範囲を削ることも可能です。


範囲指定をしたら、「保存して閉じる」。前の画面に戻るので、範囲内に関わることをプロンプトで指定します。範囲内に入らないことをあまり書きすぎると悪影響が起きますので、この場合は手の周辺の描写に必要な情報のみを与えましょう。逆に描かれるべきもののプロンプトが欠けていると、それはそれで不自然な出来になってしまいます。


インペイントの強度を選ぶこともできるようになりました。本質的には元画像の局所的image2imageですので、弱めるほどに元画像と似た結果になるため、しっかり修正できません。元画像を参照させたい場合を除き、基本的には「強度1」で良いでしょう。


キャンバスサイズを指定したら、生成開始。このように、手の部分が再生成されました。

しかし、キャンバス全体に対して非常に小さい範囲を生成しているため、あまりきれいに描けていないように見えます。こういうときには、v4から実装されたNAI独自の機能「フォーカスインペイント」を使いましょう。


・フォーカスインペイント

フォーカスインペイントを使うと、選択した部分をいったん大きなキャンバスで生成してから、縮小してはめ込むことができます。ローカル生成で言うと「自分で範囲指定できるADetailer」のような機能で、さきほどのようなごく狭い範囲もきれいに描画可能。最上位のOpusプラン(月額25ドル)を利用している場合はAnlas無料で使い放題です。


使い方は簡単。インペイント範囲を選択する画面で、消しゴムボタンの隣にあるこちらの四角いボタンを押すだけです。


この状態でキャンバス上をドラッグすると、このように「フォーカスエリア」(抽出範囲)の指定ができます。中央の透過した部分が抽出される部分、その周りの茶色くなった範囲が「生成時時に参照される範囲」です。画面左上にある「最小参照範囲」で、茶色の範囲を増減することができます。

キャンバスサイズをあまり狭めすぎると、どこに何を描けばいいのか、これはそもそも何なのか、AIが理解できず崩壊しやすくなるようです。フォーカスエリアだけを見てもアイスを持つ女の子の手であることがわかるよう、広すぎも狭すぎもしないサイズにするのがコツ。上の図では、手の周辺だけをエリアにするのではなく、かなり広めにエリア指定しています。


フォーカス範囲を普通にドラッグするとそのまま上下左右に動かせますが、ふちの右下の濃くなった部分をドラッグするとサイズの再選択もできます。範囲指定を間違えたときは、範囲外を単クリックするとやり直せます。エリアを指定したら、左下のペンのボタンを選び、インペイントしたい範囲を改めて決めましょう。あとは普段通り生成するだけです。


こちらが生成結果(手元をアップにしています)。

先ほどの生成結果と比べると、通常のインペイントより綺麗に仕上がっているのが分かるかと思います。プロンプトは「1girl,holding popsicle, summer,beautiful hand,detailed hand,sunflower」。インペイント範囲内にひまわりも含まれるので、sunflowerも忘れないようにしましょう。


・フォーカスインペイントで「疑似ADetailer」?

インペイント機能で強度指定が可能になったため、フォーカスインペイントで弱めにインペイントすることで、描かれているものをそのままに解像度だけをアップすることができるようになっています。ローカル生成における「ADetailer」(キャンバス内の顔や手を自動検出してアップスケールする機能)を任意の範囲に掛けるような使い方ができるか、気になるところです。


こちらの画像は、全身像がおさまる「引き」のカメラワークだったため、アップにすると描写の甘さが気になります。瞳がちゃんと円になっていなかったり、眉毛の塗り忘れのようなものが生じたりしていますね。(ヘッドホンもよく見るとおかしいのですが、ここではおいておきます)


強度0.35でフォーカスインペイントすることで、画風を極力変えずに描写を整えることが一応はできました。ただ、強度が弱いと生成前の低劣さを引き継いでしまい、強すぎると画風が変わってしまうのが難点です。

このように、「フォーカスADetailer」的な使い方もできなくはありませんが、ローカルモデルの画風を維持したいのであれば、わざわざNAIで部分アップスケールするのではなく、まずはADetailerやHiresなどローカルの通常のアップスケール手段を使うのが一番でしょう。この手法が活用できるのは「NovelAIで生成した画像にNovelAI上でADetailerを掛けられたら・・・」という限定的な場面だけかもしれません。




②Noobaiインペイント

さて、V3インペイントが登場して以来、しばらくはインペイントと言えばNovelAIの天下だったのですが、最近はローカル生成でも同じように高性能な「部分描き直し」ができるようになってきました。2025年夏時点で一番使いやすいと感じているのは、Controlnetを使った「Noobaiインペイント」です。

上記のCivitaiページから「noobaiInpainting_v10.safetensors」(4.66GB)をDLし、ローカルのModels/Controlnetフォルダに配置すれば準備完了です。Controlnetの基本的な使い方はこちらの記事を参照のこと。


・Noobaiインペイントの使い方

reForgeやForgeClassicなどのローカルwebUIでControlnet画面を開き、プリプロセッサは「inpaint_noobai_xl」、モデルはさきほどの「noobaiInpainting_v10」を選択します。プリプロセッサがない場合はwebUIが対応していないか、アップデートが必要です。noobaiInpainting_v10が出てこない場合は更新ボタンを押してみましょう。


その上で、NovelAIのときと同様にインペイントしたい画像を読み込ませて、再生成したい場所を塗りつぶします。


キャンバスが小さくて範囲指定がやりにくいときは、カーソルがキャンバス上にある状態でキーボードの「S」キーを押すと、このように画面全体に拡大できます(拡張機能のcanvas zoomによるもの。初期搭載されていないwebUIもあります)。選択範囲はデフォルトだと白く塗りつぶされるのですが、白背景では分かりにくいので、右上のパレットボタンから色を変更するとよいでしょう。


あとはこの部分に描きたいものをプロンプトで指示し、画像生成するだけです。ここでは、「1girl,red eyewear,blue eyes,one eye closed, smile」で生成し、ウィンクさせてみました。キャンバスサイズの比率はCNに入力した画像と同じにしておきましょう。


・Controlnetを使わないインペイントもある

ちなみに、Controlnetを使わず、StableDiffusionの基本的機能で「インペイント」することもできます。img2img画面の「Inpaint」タブから画像をこのように画像を読み込ませて、プロンプト通りに選択範囲を変更するものです。

スタジオ真榊ではCNを使うものを「CNインペイント」、使わないものを「デフォルトインペイント」と読んでいますが、このデフォルトインペイントは選択範囲の内外を自然につなげる力がやや弱いので、CNインペイントが高性能になった現在はあまり使う場面がなくなっています。基本的な使い方は下記記事で解説しています。


・Noobaiインペイントは範囲外も微妙に変化する

Noobaiインペイントは厳密にはNovelAIなどのインペイントとは異なり、Controlnetの仕組みを使って選択範囲内だけを任意の内容に変化させる機能です。「指定範囲の切り取り▶︎貼り付け▶なじませ」を行っているのではなく、キャンバス全体の再生成を行っているので、指定範囲以外も微妙に変化してしまう点に注意が必要です。


これは左のイラストの顔部分だけをNoobaiインペイントしたものですが、他の部分も変容していることがわかります。

指定範囲以外を変化させたくない場合は、text2image画面ではなく、image2imageのデフォルトインペイント画面を使います。詳しいやり方は、記事後段の「インペイント実践編 ①キャラクター差分」をご覧ください。


NAIv4.5インペイントとNoobaiインペイントの違い

さて、これら二つのインペイントは、どのように使い分けたらいいのでしょうか。結論から言えば「両方使えるようになっておくべき」ということになるのですが、まずはそれぞれの強みと弱みを整理してみます。


・NAIの強みは「手軽さ」と「便利さ」

まず、一つ目のNovelAIの強みはやはり「手軽さ」です。いちいちwebUIを立ち上げる必要もなく、ブックマークから画像をポンと放り込むだけで、あっという間にインペイントできてしまう上に、描画性能も高い。その上、フォーカスインペイントはAnlas無料(※Opusプランの場合)でできるので、ちょっとした細かなミスなどはNovelAIにお願いすればちゃちゃっと直すことができてしまいます。


また、学習内容が豊富なため、多様なプロンプトがしっかり効くことも見逃せないポイントです。illustrious系の人気モデルと比較しても大量のキャラクターや容姿、ポーズを深く学習しているので、ローカルモデルではLoRAがないと出せないようなマイナーキャラも容易にインペイントすることができます。


一方、弱みとしては、やはり有償サービスであるという点でしょうか。NovelAIの利用料金は、月あたり10ドル~25ドル。もちろん、ローカル生成用のPCにもかなりの初期投資が必要ですので、どっちもどっちではありますが、ローカルと併用するとなると安くないサブスク費用が毎月掛かる点は留意しておきたいところです。ただ、個人的には「NovelAIによるインペイントがないと作品作りができない」と感じるほどに手軽で便利な機能ですので、ローカルメインの方も一度は使い勝手を試してほしいところではあります。


・Noobaiインペイントの強みは「いつもの感」と「拡張性」

正直、NovelAIを使ったインペイントは圧倒的にラクですし、範囲外が変容したりもしないので、基本的にはあちらを使うのがよいと思いますが、NoobaiインペイントはNovelAIにはできないたぐいのインペイントをしたい場合に効果を発揮してくれます。


例えば、いつもの自分の作品の顔立ちや画風がしっかり確立している場合、NovelAIで表情などをインペイントすると「なんか違う」感じになってしまいます。 

     ▲プロンプトを工夫しても違うタッチのキャラになってしまう例


ローカル生成でオリジナルの画風を確立している場合、NovelAIに任せられるのは、自分の作風とそこまで強く関わらない部分(手や背景など)に限られてしまう、ということです。NoobaiインペイントはNAIに比べてやや下準備が面倒な代わりに、普段使い慣れているローカルモデルを使って自然なインペイントを施すことができるのが強みと言えるでしょう。また、NovelAIはモデルが学習していないものはどうやっても出すことができませんが、ローカルではどんな概念でも追加学習可能という点も、Noobaiインペイントの利点を強めています。


もう一つ、NovelAIにはできない利点としては、Controlnetと併用できることが上げられます。NovelAIの場合、インペイント範囲に何を描くかはプロンプトとSeed値によるわけですが、ローカル生成の場合、Noobaiインペイントで「ここを描き直すよ」と指定するだけでなく、同時に「ここにコレを描いてよ」と指示することが可能です。具体的な例を見てみましょう。


・Anytestとnoobaiインペイントの併用

例えば、こちらの無人の廊下にミナちゃんをインペイントしたいとします。


普通にNoobaiインペイントすると、Seed値によって毎回違うミナちゃんが出てくるわけですが、既に手元にあるこちらのミナちゃんを描きこんでほしいときは、このように2つ目のControlnetとして指定すればOK。こちらは、入力した画像の線画を保存しようとする「AnytestV3」を使用します。


二つのControlnetを併用して生成すると、このような生成結果となりました。

これは背景にキャラをインペイントしている例ですが、逆にキャライラストに背景をインペイントすることもできます。(詳しいやり方は次の「Inpaint Anythingで自動マスク」の章で解説します)


ただ、既に手元に「前景・背景」が両方そろっているのであれば、単に画像編集ソフトで2枚を重ね合わせればいいのでは?という考え方もあるでしょう。前景と背景を別々に生成して合成するやり方は、こちらのワークフロー紹介でも取り上げた手法です。

実際、この手法はインペイント範囲の指定が難しく、広すぎると学校の背景が変容してしまいますし、狭すぎるとミナちゃんが途中で切れてしまう現象が起こるので、単に重ね合わせてi2iしたほうが手っ取り早いのはその通り。


例えば、単に重ね合わせただけでは背景と前景でライティングやカラーリングが違いすぎて、不自然な「コラージュ感」が出てしまう場合に、この手法は有用です。逆に、元の画像と色合いも含めて変更したくない場合は、画像編集ソフトでの重ね合わせのほうが向いていると言えます。


・小括

二つのインペイントの違いをまとめると、


・v4.5インペイント:ちょっとしたミスに気付いたときぱっと修正できる手軽さと描画力の高さが強み。0Anlasで何度もやり直せるフォーカスインペイントも有能。ただし、追加学習や線画指定はできず、自分モデルの画風再現は不可能。

・Noobaiインペイント:起動までが面倒だが、"いつもの画風"で生成できるのが最大の強み。LoRAやControlnetによる拡張性もNAIにはない特徴


…ということになるでしょうか。どちらか片方ではなく、両方使いこなせるようになると、時間を効率的に使いながら思った通りのイラストを作り込めるようになるわけです。


Inpaint Anythingで自動マスク

さきほど学校内の画像にミナちゃんをインペイントする実験をした際、フリーハンドではミナちゃんがいるべき範囲を正確に覆うことができず、見切れたり広く取り過ぎたりしてしまう問題がありました。こういうときは、「Inpaint Anything」というローカル拡張機能を使うと、自動でマスク範囲を作成することができます。


こちらが基本画面。

まず最初に、Inpaint Anythingに必要なモデルをDLする必要がありますので、上の方にある「Download model」ボタンをクリックしましょう。コマンドプロンプト画面でDL終了を確認したら準備完了です。(約300MB程度)


自動でマスク範囲を生成したい画像を画面左上から読み込ませ、オレンジの「Run Segment Anything」ボタンを押します。アニメ画像の場合は、左側にある「Anime Style (Up Detection, Down mask Quality)」にチェックを入れておくと誤認が減ります。


こちらは「Anime Style」オフでセグメント抽出したもの。これは、画面上のどこに何が描かれているかを自動認識して、種類ごとに色分け指定したものです。それぞれの色には例えば「hair」や「ribbon」などの情報が対応しており、AIはどこに何が描かれているか理解することができます。


こちらは「Anime Style」をONにした場合です。いずれにせよ、範囲指定に使うので検出内容はさほどここでは関係ありません。


ここからがポイント。抽出されたセグメント画像の上で左クリックをすると、黒いドットが打たれ、その色が塗られた部分を自動選択することができます。ドットは複数打っても構いません。上の図では、背景の左上にドットを打ちました。この状態で「Create mask」を押すと―

このように背景部分だけが白く選択されます。左側の「Get mask」ボタンでマスク画像を入手できるので、あとはControlnetでこのマスク画像を使えば、より正確な併用インペイントを行うことができるわけです。


指定のやり方は、ControlnetでNoobaiインペイントをする際に、「Use Mask」にチェックを入れて、さきほど作ったマスク画像のpngを読み込むだけでOKです。

あとは、もう一つのControlnetでAnytestを呼び出し、背景のイラストを読み込ませればOKです。


こちらが生成結果。キャラクター部分は完全に保持され、Anytestの参照画像に従って背景が追記されました。こうした細かな作り込みはNoobaiインペイントの独壇場で、NovelAIにはできない芸当と言えるでしょう。


・線で選択する方法もある

ちなみに、複数のセグメント(色範囲)を選択したい場合はドットを打つのではなく、ドラッグして線で選択することもできます。さきほどは背景部分をドットで選択しましたが、キャラ部分を選択したい場合はキャラ部分の全てのセグメントを選択できるよう、ひたすらぐりぐりと塗りつぶすことになりますが、それは面倒すぎますね。今回はせっかく白背景なので、一端背景部分を選択してから「マスクを反転」にチェックを入れて、選択範囲を反転させた方が手っ取り早いでしょう。

     ▲「マスクを反転」にチェックを入れて「Create Mask」


キャラクターを避けて背景部分だけをマスクするには、他にも背景リムーバー系のアプリを使うなどさまざまなやり方がありますので、自分に合ったやり方を見つけるのも良いでしょう。


インペイント実践編 V4.5 vs Noobai

ここからは、V4.5インペイントとNoobaiインペイントによる実際の生成例を比較実験していきます。以下のような目的別に、二つのインペイントでそれぞれどのような結果になったかや、入力時のコツ、優れているのはどちらか、などを検証してみたいと思います。


①キャラクター差分

②ポーズ変更・表情変更

③背景変更

④アウトペイント(存在しないキャンバス外の生成)

⑤部位の修正

⑥既存画像へのキャラクター追加

⑦イラスト同士の合成


①キャラクター差分

まずは、手元にあるイラストのキャラクター部分を別のキャラクターに入れ替える実験です。キャラの全身を入れ替えてしまうだけでなく、首から上(もしくは首から下)だけを入れ替えれば、別衣装に変更するようなことも可能です。


これは、プロンプトだけでは再現が難しいテーマを表現したい場合に非常によく使う手法。例えばこちらのファンアートは、衣装部分をまず別のキャラクターとして生成してから、首から上の部分をNoobaiインペイントして作っています。

ちなみに、素体部分のキャラクターを生成する際は「bald」タグを使ってマネキン状態にしておくと、髪の毛が胴体部分に掛からずインペイントしやすくなります。


では、さきほどの夏らしいイラストのミナちゃん部分を別のオリジナルキャラ(綾香さん)に変更するやり方を見ていきましょう。NovelAIでは画風も容姿も変わってしまうので、ここではNoobaiインペイントを使うことにします。


さきほどのInpaintAnythingを使いたいところですが、そうするとミナちゃんの輪郭にぴったり沿った別キャラクターが描かれてしまうことになるので、逆に不自然になってしまいます(アンパンマンの輪郭にドラえもんを描くようなもの)。新たに描かれるキャラが見切れてしまわないよう、かなり広めにフリーハンドで覆いましょう。プロンプトは以下の通り。


PP:1girl,ayaka_shinomiya,wife,curvy,blue eyes,(asymmetrical hair:1.2), large breasts,black hair,straight hair,medium hair,crown braid,x hair ornament, blue hairpin,shiny skin,thick eyebrows, blunt bangs, tareme,one ear,hair_behind_ear,summer dress,white dress,sitting,summer,solo, lens flare,v-shaped eyebrows, light leaks,knees together feet apart, arm support,sunshine,basket bag,straw hat,half-closed eyes,sundress, sitting, sunflower field, blue sky, cumulonimbus, melting popsicle, summer,sweat,looking at viewer,holding popsicle+LoRA・クォリティタグ


こちらが生成結果です。最初に説明しましたが、Noobaiインペイントはインペイント範囲以外も微妙に変化してしまうので、文字など細かな部分が変容してしまいました。今回はさらにHiresを掛けたこともあって、変容度合いが大きくなっています。


インペイント範囲外は完全に元のままでインペイントしたい場合は、text2image画面ではなくimage2image画面の「Inpaint」タブで同じことを行えばOKです。


まずはインペイント範囲を決めますが、これは変容してもOKなところをかなり広めに取るようにします。(※正確なインペイント範囲はあとでCNの項目で決めますので、こちらは文字など変容しては困るところがインペイント範囲外であることだけ強調できれば良いと考えてください)


設定はこのような感じ。「マスクの範囲をInpaint」で「ノイズ除去強度:1」にしておきましょう。キャンバスサイズは大きすぎると破綻するので、短辺1280px程度までにすること。


その上で、Controlnet画面でもさきほどtext2image画面で行ったのと同じ設定にします。こちらはいつもと同様、インペイントしたい範囲を素直に選択すればOKです。(Upload independent control imageをオフにしたままにすれば、上記Inpaint範囲がそのまま踏襲されます)


こちらが生成結果です。範囲外が文字化けすることなく、狙った範囲だけにNoobaiインペイントを掛けることができました。


②ポーズ変更+表情変更

今度は、いまできたイラストのポーズと表情をv4.5インペイントで変更してみます。カメラに向かって笑顔でアイスを差し出しているイラストにしてみましょう。


<v4.5インペイントの場合>

インペイントする範囲は、変更したい部位だけでなく、新しいポーズで腕が収まるべき場所も含めて選択します。顔全体をインペイントしてしまうとNovelAIではふつう別人になってしまいますが、ここでは瞳を残して眉と口だけをインペイントすることにしました。


プロンプトはこちら。「こちらにアイスを差し出している」は「incoming food,holdin popsicle」としました。右手は自然に下ろしてほしいので、arm supportを入れています。


こちらが生成結果。狙ったとおりポーズを変更することができました。指先など細部が怪しい場合は、ここからアップスケールやフォーカスインペイントで整えていくことになろうかと思います。


<Noovaiインペイントの場合>

Noobaiインペイントでも同じことができます。こちらはNovelAIと違い、画風の変化に気を遣わなくてよいのでラクですね。ただ、novelaiほどポーズ変更はスムーズでなく、何度かガチャが必要でした。

さきほどキャラ変更したときと同様、image2image画面のInpaintタブを使います。


こちらが生成結果。ドレスデザインが変容しているので、気になるようならこれもインペイントで直しましょう。


③背景変更

今度はキャラクター全体を残しつつ、背景だけを変更する場合です。


<v4.5インペイントの場合>

NovelAIにはInpaint Anything機能がありませんので、このようにフリーハンドで広めにマスキングします。


こちらがプロンプトと生成結果。ミナちゃんはそのままに、プロンプトに従ってビーチが描かれました。(ただ、この位置にベンチや屋根があるのはちょっと不自然ですね)

もし、ひまわりなどインペイント前にあったモチーフや色が残ってしまったり、妙な位置に妙なオブジェクトが生じたりした場合は、たいていマスキングが甘いのが原因。境目は曖昧に判定されるので、きちんと覆えるよう範囲は広めに取りましょう。


インペイントしない部分に残っている影やカラー、ライティングなども生成結果に強く影響します。このイラストの場合、キャラ部分が明らかに日差しの強そうなカラーで描かれていますから、「night」と指示しても上手に夜にできず、破綻しやすくなってしまうようです。

こういうときはキャラクター部分を元画像に忠実にする必要がありませんので、AnytestやLineartで素直に線画継承したほうがよい結果になるでしょう。


<Noobaiインペイントの場合>

Noobaiインペイントでもコツは一緒です。できるだけ塗り残しがないようにマスクして、任意のプロンプトで生成するだけ。自動でマスキングしたい場合はInpaint Anythingを使いましょう。


このように背景変更ができました。


ただ、このライティングに対して前景の光の当たり具合やカラーリングは不自然なように思います。真昼の直上からの日差しのイラストを、日暮れに向かうバックライトのイラストに合成しているので当然ですね。できれば、この画像をAnytest v3に掛けて、もう一度色を配置し直した方がよいでしょう。


するとこのように、線画部分はそのままに、カラーが再検討されます。ただ、影のふちの線画も拾ってしまっているため、影の位置は変わっていません。ここまで強烈な逆光にしては、上から光が当たっているように見えるのはやはりおかしいように思います。


そこで、Anytestにそのままこのイラストを読み込ませるのではなく、プリプロセッサ(下処理)を掛けます。lineart animeで線画を抜き出してしまうのが良いでしょう。こうすると、影範囲抜きのキャラの線画を抽出することができます。


こちらで生成するとこのように、影の位置が自然になりました。ただ、これはインペイントではないので、キャラクターの目つきや印象はやや変化しています。


こちらはAnytestv3ではなく、Noobai lineartで生成したもの(リンク先のeps_lineart -anime)です。こちらの方が線画を忠実に残しつつ、影位置も元画像に引っ張られていないので、より意図したものに近づけやすいかもしれません。

このように、用途によっては無理にインペイントを使うより、別のCNを使ったほうが良い結果になることも多いことを覚えておきましょう。ちなみに、ここまでの例はほとんど元画像に引っ張られて6本指になっています(!)ので、実践では最初の生成・チェリーピック段階で間違いを探し、インペイントできちんと修正してから参照画像にするのを忘れないように。


④アウトペイント(存在しないキャンバス外の生成)

インペイント機能を使って存在しない「続き」を描いてもらうことを「アウトペイント」と呼びます。構図を考える際に、よりキャンバスを大きくしてからトリミングすることで、より意図の見えやすい絵作りをすることが可能になります。


アウトペイントには、まず下準備が必要です。画像編集ソフトで続きを描いてもらいたい画像を読み込み、このように縮小配置してしまいます。


この余白部分をインペイントすることで、「存在しない続き」を描いてもらえるわけですね。画像を統合してキャンバス全体をコピーし、NovelAIなどにペーストしたら、あとはこのようにやや広めに余白をマスクしましょう。


こちらが生成結果。このように、存在しない続きを描いてもらうことができました。

アウトペイントはNiji journeyなどでよく使われている手法です。メインモチーフを中央にどんと大きく描いておしまいのイラストではありきたりですので、このように外へ広げていく手法も身に着けておくと、「いかにもなAI絵」から脱却しやすくなるかなと思います。はじめからこの大きさの画像を生成するのは難しいですし、キャラクターの描写や配置が甘くなるので、作りたい構図が決まっている場合は非常に役立つテクニックです。


Noobaiインペイントでも同様のことができますが、やり方はごく基本的なので省略。さきほど作った縮小キャンバスを読み込ませて、余白を広めにインペイントするだけです。


ちなみにローカルでは、インペイントではなくAnytestにそのまま余白ありの画像を放り込んでも、真っ白な部分をインペイントしたような結果が得られます(下図)。Anytestは入力された画像の線画部分を保持しつつ、線画のない部分はプロンプトに従って自由に描画しようとする特性があるため、余白部分は疑似的にインペイントしたような現象が起こるわけですね。


⑤部位の修正

インペイントの最もよく使う用途。6本指など破綻した部位や物体を修正したり、不要なポケットを消したりといった手法です。特に特別なやり方があるわけではなく、直したい部分をマスクして生成し直すだけ。既に述べた通り、NovelAIではフォーカスインペイントを使うと良い結果になりやすいです。

描かれているものを消して自然に馴染ませたい場合は、Photoshopの生成塗りつぶしも便利でよく使います。余計な位置のリボンやポケット、背景に生じた邪魔なオブジェクトなどを範囲選択して、プロンプト欄を空欄のまま再生するだけです。何かを描き込む「足し算」のインペイントは苦手ですが、引き算の場合はPhotoshopが一番手っ取り早い気がします(adobe税が掛かりますが…)


<破綻チェックと修正について>

SD1.5時代やSDXL黎明期に比べると、現在のモデルは手の安定性が飛躍的にアップしていますし、破綻してしまった場合もインペイントで簡単に直すことができるようになりました。

           ▲SD1.5時代はこんなんだった


今は「どうやって直すか」よりも、むしろ破綻に気づける力や、細かいミスも放置せずきちんと直そうという心持ちの方が重要なように思います。「この程度の破綻なら別に気にされないだろう」という気持ちは、どうしても絵から香ってしまうからです。


最低限、「指の数」「手の左右」「関節の向き」「光源と影の方向」「制服デザイン」「ボタンの数と左右」「キャラの身長やバストサイズは正しいか」「文脈は明らかか(他人が見ても状況や何を伝えたい絵か分かるか)」は、生成時と投稿前にダブルチェックしましょう。私は全部やらかしてきています!


例えば下図のイラストだと、6本指が一番の問題なわけですが、影の方向や「ひまわりが太陽の方を向いていないのはおかしいのでは?」「シュシュを髪に巻いているのに手にもう一つついているのはなぜ?」というところも気になります。生成物には手描きでは起こりえない、さまざまなレイヤーの「おかしさ」が潜んでいるので、それをどう気付いて直すかも腕の見せ所なのかなと思います。


⑥既存画像へのキャラクター追加

無人の背景絵などにキャラクターを描き込む手法です。さきほど学校内の背景絵にミナちゃんをインペイントしましたが、やり方によっては、現実世界の写真の中にアニメキャラクターが溶け込んでいるような表現も可能です。


立ち絵はさほど難しくないのですが、背景とキャラが干渉するようなシーンの場合はやや難しくなります。今回はこちらのベッド画像にミナちゃんが横たわっているところを生成してみましょう。(NovelAIではミナちゃんの画風が異なってしまうため、Noobaiインペイントで行います)

PP: ミナちゃんの容姿プロンプト+lying,on bed,on back,embarrassed,looking at viewer, angry,legs together,cowboy shot


こちらが生成結果。

なかなか頑張ってくれていますが、気になるのはインペイント内外の境目がぼんやり見えてしまっていることです。これは、かなりリアルタッチなベッドイラストに、フラットなイラスト風の塗りのキャラクターを重ねたために起こってしまう現象です。また、枕部分の沈み込みやサイズ感もやや不自然感が強いですね。


解決法はいくつかありますが、できたイラストをimage2imageアップスケールしてしまって馴染ませるか、Hiresを掛けるのが最も簡便かと思います。背景のタッチがイラスト側に寄るので、もう少し自然に見えるようにできます。


他には、不自然に感じる境目の部分をNovelAIでインペイントしてしまうという荒技もあります。この場合、1girl,lying on bed,bed sheet,on backといった適当なプロンプトでインペイントするだけでも、それなりにきれいに整えてくれます。


ただ、これらの方法では背景画像の変容が避けられません。背景画像は完全にそのままに、キャラクターだけを溶け込ませたい場合は、前景と背景に分けて生成し、画像編集ソフトで合成した上で、不自然になった境目はNovelAIでインペイントするか、手作業で仕上げていくやり方が一番高品質になろうかと思います。


このテクニックを使うと一貫性を保った背景が使えるため、特にAIで漫画を作る際に便利。一貫性を保った背景については、これまで2回に分けて特集していますので、こちらも併せてご参照ください。


⑦イラスト同士の合成

前景と背景との合成もそうですが、別々に生成したキャラクターイラストを合成するときにもインペイントは役立ちます。画像生成では、複数人物を生成しようとした場合にプロンプトが混じってしまうのが日常茶飯事。Regional prompterやNovelAIにおける「キャラクタープロンプト」など、キャンバスの範囲ごとに適用プロンプトを分ける機能もありますが、「1人物1生成」であとから合成したほうが手っ取り早いことが多いです。


例えば、この2人が手でハートマークを作っているイラストを生成したいとします。普通にやると、2人分の容姿プロンプトとLoRAを使って延々と長いプロンプトを組むはめになってしまいますが、インペイントを使えばもっと簡単。このように首から上と手元だけの下絵を画像編集ソフトで作ってしまい、あとは余白部分をインペイントで埋めてしまうわけです。

手の部分は全く関係ないheart hands duoで生成したイラストからコピペしたもの。こうしておいて、白い部分をマスクしてインペイントすれば、さきほど存在しない続きをアウトペイントしたように自然につなげてもらうことができます。


こちらはV4.5インペイント。首から下の情報は「キャラクタープロンプト」機能を使って描き分けています。髪の毛部分がややぶれていますが、ここは個別にインペイントで直していけばいい感じにできそうですね。キャラに白ふちが着いてしまっているのは、どこか白背景の塗りつぶし忘れがあり、「白縁がついている」と誤認されたと思われます。


Noobaiインペイントでも同じことができます。このように足りない部分をざっくり範囲指定すればOK。


プロンプトは「2girls,heart hands duo,school uniform, masterpiece,best quality,amazing quality, general, (white background, simple background:1.3)」とすると、このように非常に高い精度で空白を補ってくれます。


アップスケールの際にキャラクター容姿が変容してしまいやすいので、低強度でi2iアップスケールするか、変容したものの顔部分を再度個別にインペイントするなどして整えるとよいでしょう。


<逆順でもできる>

ちなみに、このイラストを得たい場合、実は①で紹介した素体を使う手法でも似たことができます。顔部分は気にせず、女性2人がheart hands duoしているイラストを先に作ってしまい、それぞれの顔部分を個別にインペイントすればいいわけです。胸の大きさなどもあとからインペイントで直せます。(身長差はheight differenceで出すとよいですね)

どちらの方法が早いかは、作りたいシーンによるかと思います。これら7つの使い方が頭に入っていれば、どうすればイメージしたイラストを得られるか、ぱっと思い浮かぶようになるはずです。


終わりに -文脈を盛るインペイント-

というわけで、「インペイントが理解る! NovelAIv4.5 vs Noobaiインペイント」でした。SD1.5が主流だった当時、インペイントといえばおまけ程度の機能だったように思いますが(破綻を直そうとするとまた新しい破綻を連れてくる存在だった)、現在はかなり意図に沿った修正をしてくれるようになったなと思います。


さきほど「指の数」「手の左右」「関節の向き」「光源と影の方向」「制服デザイン」「ボタンの数と左右」「キャラの身長やバストサイズは正しいか」「文脈は明らかか」をチェックして直したいよねという話を書きましたが、最後に少し触れておきたいのは「文脈」についてです。


さきほど作ったheart hands duoのイラストは、「この二人って同じ高校だったんだ」「意外に仲良かったんだ」という狙いで制服姿にしたわけですが、正直それだけではさほど面白いとは言えません。そもそも二人とも私しか知らないオリジナルキャラなので、まさに内輪ウケといった感があります。

例えば、桜の下であんなさん(右)にだけ卒業証書を持たせることで、背の大きい綾香さん(左)が後輩であんなさんが先輩だったことが分かるとか、先輩は平然としているけど後輩のほうがやや頬を赤らめて緊張しているとか(逆でもいいですね)、インペイントを重ねることで楽しい要素をどんどん盛っていけるわけです。となると、リボンの色を分けたら学年が違うことが分かるなとか、実はあんなさんは高校時代もっとギャルっぽかったらどうだろうとか、いろんなアイデアが浮かんできます。


そして、そうしたアイデアは今回紹介した7つのテクニックを使えば、さほど難しくなく達成できるわけです。あんなさんをギャルっぽくするなら①の「キャラクター差分」、表情に差を付けて卒業証書の筒(holding diplomaで出ます)を持たせるなら②の「ポーズ変更・表情変更」、背景を桜にするなら③の「背景変更」、キャンバスを広げて校門を描くなら④の「アウトペイント」、LoRAがないと再現できない複数キャラにheart hands duoをさせるのにそもそも⑦の「イラスト同士の合成」を使っていました。また、桜散る校門のイラストに二人を描き込みたいなら、⑥の「既存画像へのキャラクター追加」のテクニックが役立つでしょう。


言ってみれば、インペイントは「困難の分割」のための技術です。一発生成ではどうしても主題がぼんやりしてしまうイラストに、手描き絵と同じように意図や文脈、気持ちを込めるために不可欠なテクニックですので、これからも進歩を追っていきたいと思っています。


それでは本日はこのへんで。スタジオ真榊でした。


Attachments (77)

hWIaCboygBXDmiP8pVfMc9xc.jpeg

hWIaCboygBXDmiP8pVfMc9xc.jpeg

eknmDMD5IbdnJm5xnaqFhAOS.jpeg

eknmDMD5IbdnJm5xnaqFhAOS.jpeg

7bsHRYrGk5RxYw0JAkKPatMj.jpeg

7bsHRYrGk5RxYw0JAkKPatMj.jpeg

JOS8EfFL7gSISoBMKZSsjrPU.jpeg

JOS8EfFL7gSISoBMKZSsjrPU.jpeg

5h8IxvYkBTwuUWkj1aOXrKoZ.png

5h8IxvYkBTwuUWkj1aOXrKoZ.png

mOb5KppV4r3rlUvcvUzq4bFg.png

mOb5KppV4r3rlUvcvUzq4bFg.png

p2H1PBITTWVZKZT9IcWrJg6n.png

p2H1PBITTWVZKZT9IcWrJg6n.png

pTDEAkjydjj635PVCRkihWNz.png

pTDEAkjydjj635PVCRkihWNz.png

ZUyzrdJQUAHJ1xGoZzTGma0e.png

ZUyzrdJQUAHJ1xGoZzTGma0e.png

TfUBclFGP8hANhBM3cAiXbJo.png

TfUBclFGP8hANhBM3cAiXbJo.png

7o7JNRNDxJ8Pv5OFdFVfYkgh.png

7o7JNRNDxJ8Pv5OFdFVfYkgh.png

PzTxYVGToIRCJ2t4ZYBnrYfm.png

PzTxYVGToIRCJ2t4ZYBnrYfm.png

Rnn9qkOXwt6AyFwDm8ygv0h5.png

Rnn9qkOXwt6AyFwDm8ygv0h5.png

EhUMMNi7Pqlz37sGNowpQ2v7.png

EhUMMNi7Pqlz37sGNowpQ2v7.png

yRlHC2esx7GfwXKnmSnETPRz.png

yRlHC2esx7GfwXKnmSnETPRz.png

LIXXqdHtf66eNVzkUqrdtyqS.png

LIXXqdHtf66eNVzkUqrdtyqS.png

zyVLoHk8tlZdaIiuWqK1HEAe.jpeg

zyVLoHk8tlZdaIiuWqK1HEAe.jpeg

BS1dxx1huYKwA879uxX0WOXy.png

BS1dxx1huYKwA879uxX0WOXy.png

lkZT7it42irllrwPPGIMoQAA.png

lkZT7it42irllrwPPGIMoQAA.png

czsclKT6gg0GcxiiM7bau7vP.png

czsclKT6gg0GcxiiM7bau7vP.png

oQEt0uqD7wg43aImZkNfZKWX.png

oQEt0uqD7wg43aImZkNfZKWX.png

H8hEPewW1f0OhitgT1PamXiV.png

H8hEPewW1f0OhitgT1PamXiV.png

4yoxsiL7M70fXVceyyfoFu5v.png

4yoxsiL7M70fXVceyyfoFu5v.png

4Hctiu4nvO1FhWyWyZqNF88s.jpeg

4Hctiu4nvO1FhWyWyZqNF88s.jpeg

jo9WKHGvMFqMMnKTwJjqkTGR.png

jo9WKHGvMFqMMnKTwJjqkTGR.png

WX0wCFvV71hF9L8UsT1g12cj.png

WX0wCFvV71hF9L8UsT1g12cj.png

blGtmZHd3E00aa3JWABpcuSd.png

blGtmZHd3E00aa3JWABpcuSd.png

cKlDQhU7iORqaSWFi0EZZmBR.png

cKlDQhU7iORqaSWFi0EZZmBR.png

q8vn7wGPmBZe3x0q9CacVir3.png

q8vn7wGPmBZe3x0q9CacVir3.png

3I3yIbfYouyHLtW1mSXt1UNh.png

3I3yIbfYouyHLtW1mSXt1UNh.png

QvA9qy1coUzy8aJcvkHJWHZZ.png

QvA9qy1coUzy8aJcvkHJWHZZ.png

MSlzFtmVnuF0uWF2BhaQLhmy.png

MSlzFtmVnuF0uWF2BhaQLhmy.png

7GN5nK4T0TkQUPJNA5KQzWNa.png

7GN5nK4T0TkQUPJNA5KQzWNa.png

eYVs15i1c6UFgpueXtHa6Kqm.png

eYVs15i1c6UFgpueXtHa6Kqm.png

7KTsJoeH7YNkfzjWcQKAINPZ.png

7KTsJoeH7YNkfzjWcQKAINPZ.png

KIZ7u1WR0zTA86lLmPJQgFqq.png

KIZ7u1WR0zTA86lLmPJQgFqq.png

1hRIVp39d29Ci6yHwItY61MV.jpeg

1hRIVp39d29Ci6yHwItY61MV.jpeg

I8jz0GBWfk0hnW9NCq9HWv2g.png

I8jz0GBWfk0hnW9NCq9HWv2g.png

ZQr7HtM6yCa10nzOaTiUKTtH.png

ZQr7HtM6yCa10nzOaTiUKTtH.png

m64eGiAWlYa7QSuctHvFxO3V.png

m64eGiAWlYa7QSuctHvFxO3V.png

uLvyvpJQNwulkfo41Wi6loqw.png

uLvyvpJQNwulkfo41Wi6loqw.png

vBXj2z4tpjZeUaWwPaIJyX73.png

vBXj2z4tpjZeUaWwPaIJyX73.png

SFv5woscVDW0WNMMQaPEeNLD.png

SFv5woscVDW0WNMMQaPEeNLD.png

nAUyBQOAQC9Cuy7NWd6kqQ6Z.png

nAUyBQOAQC9Cuy7NWd6kqQ6Z.png

O4knIBp7vmr9Nj0K7H2xvzYe.png

O4knIBp7vmr9Nj0K7H2xvzYe.png

eQHycHTGXx7WnkMystGVuD9H.png

eQHycHTGXx7WnkMystGVuD9H.png

A9mxMWs1SjYDYHeTLUHpKuJ7.png

A9mxMWs1SjYDYHeTLUHpKuJ7.png

6iSWLZDmMrq9u5tNC6cB155c.png

6iSWLZDmMrq9u5tNC6cB155c.png

Tb9lgERFqVrv8HdNYp3D1ouC.png

Tb9lgERFqVrv8HdNYp3D1ouC.png

2dVvdxu6foRZzSNVMBxWIXAb.png

2dVvdxu6foRZzSNVMBxWIXAb.png

ZUvP55AVerkgH77v7IJ7l4xi.png

ZUvP55AVerkgH77v7IJ7l4xi.png

7gr22uk1M0Co2TRva39B7xUk.png

7gr22uk1M0Co2TRva39B7xUk.png

rSsrmMPu8irqEArGZJOZ1daN.png

rSsrmMPu8irqEArGZJOZ1daN.png

fdR2oPa2GLa0UbXlIJ8dEDyx.png

fdR2oPa2GLa0UbXlIJ8dEDyx.png

ZdgiRX4g69cdylqeBLLG7ZD0.png

ZdgiRX4g69cdylqeBLLG7ZD0.png

24dCaBsGym639QZ7ubtBw6cK.png

24dCaBsGym639QZ7ubtBw6cK.png

Dw5dpWYn7tCHQUx1Ahv9l0Du.png

Dw5dpWYn7tCHQUx1Ahv9l0Du.png

mGw0iojqXWuoV86hM3iz7GfS.png

mGw0iojqXWuoV86hM3iz7GfS.png

69jMSh4eOgfid2l20nlH8pP6.png

69jMSh4eOgfid2l20nlH8pP6.png

EhxeFmZe8PZ8H4JaTBl8p79N.png

EhxeFmZe8PZ8H4JaTBl8p79N.png

vhMMKjSVdnDFYFVQ8iNu3mjG.png

vhMMKjSVdnDFYFVQ8iNu3mjG.png

KFsoHH5u1Pf6Q4xldPGGW9Zx.png

KFsoHH5u1Pf6Q4xldPGGW9Zx.png

EmCdillWyfuFkYiy3H45qrkk.png

EmCdillWyfuFkYiy3H45qrkk.png

eADIJ6ueMCx69pGGUdASTrZ3.png

eADIJ6ueMCx69pGGUdASTrZ3.png

tsmg0qLpbFHOp0riDBezqPWR.png

tsmg0qLpbFHOp0riDBezqPWR.png

Yjy4nWTajRgcS357LUe7BzcT.png

Yjy4nWTajRgcS357LUe7BzcT.png

SpForwLwoltGzyQ934gnhAhU.png

SpForwLwoltGzyQ934gnhAhU.png

fKdze2HDO16ZhklW4Cjmk3ul.png

fKdze2HDO16ZhklW4Cjmk3ul.png

lSvmLQVaD3OTMWUYiTm6vS4R.png

lSvmLQVaD3OTMWUYiTm6vS4R.png

MvngvF63cB1GXgiTpSTuiOZK.png

MvngvF63cB1GXgiTpSTuiOZK.png

bq5rr5tpLuuIyHLoqOcTEbBU.png

bq5rr5tpLuuIyHLoqOcTEbBU.png

G26uKlQdZ8y5E0i2N8rmeCpq.png

G26uKlQdZ8y5E0i2N8rmeCpq.png

iEKulQKhJmHnYjVNZUP3aJFV.png

iEKulQKhJmHnYjVNZUP3aJFV.png

MVzDLzCWnGf8WM0qyWSYvBU3.png

MVzDLzCWnGf8WM0qyWSYvBU3.png

phKkmQzPeYgtblrhUiv5ZTW0.png

phKkmQzPeYgtblrhUiv5ZTW0.png

Qwv03AzWC6Lc7FKvsHOGnfN4.png

Qwv03AzWC6Lc7FKvsHOGnfN4.png

ApvdtV9kUXCJB2XvrF1ONlLN.png

ApvdtV9kUXCJB2XvrF1ONlLN.png