AIのOutpaintingを試してみた

初めに

 この記事は題名の通り、AI絵生成の機能の1つである「Outpainting mk2」を試してみたというものです。モデルは「Waifu Diffusion v1.3」です。

 やり方としては、「元画像をAIで生成、1方向をOutpaintingで書き足して、おかしい所をInPaintingで補正、補正済みの画像を再びOutpaintingで....」を永遠に繰り返しました。画像が余りにも大きいとVRAM的にも生成時間的にも厳しいので、程々の大きさでやめましたが...。個人的には割と綺麗に出来たつもりです。

元画像

 呪文は忘れましたが、テーマとしては「寝室で寝転んでいる女性」ですかね?この画像を生成するのも色々時間がかかった記憶があります。

拡張開始

1回目

 右方向に拡張します。余計なものが生成されていますが、どの道InPaintingで修正します。

 修正したものが、この画像です。

2回目

 左方向に生成します。

3回目

 下方向に生成します。

 ベッドの端っこを再現したいので、上手い感じの画像が生成されるまでガチャです。

4回目

 今度は上方向です。流石に壁の色がおかしいので変更したり、一部分を修正したりしたものが下図になります。

 ライトだったり、生け花だったり、割といい感じになったと思います。

5回目

 一周回って、再度左方向です。うーん、そのままでは違和感が凄いですね。

 実は、この時点でいったん日付が空いています。バージョンが変わったせいか、若干境目が目立っています。気のせいという事にしておきます。

 ただの壁だと面白くないので、謎のオブジェクトを配置してみました。どうすればいいのか、分からなくなってきました。やっぱり、ガチの絵師さんにはかないませんね...。圧倒的発想力不足...。

6回目

         

 右方向です。若干、めんどくさくなってきたのは内緒です。

 ベッドの下側を微調整しました。

やってみて分った点

  • 絵師さんは凄いですね。私だとどうしても発想力が無いので、良い雰囲気を構築するのが難しいです。
  • Outpaintingも結局ガチャです
  • 画像の半分だけ切り取って、別途生成した後に合体する作戦はだめですね
    • 例えば、右半分・左半分で分割して生成して、後で合体するといった感じです
    • 全体を含んだ場合と分割した場合では、結果がかなり異なります
    • 言われてみれば当たり前なのですが、全体を含めないと「画像全体の雰囲気」をちゃんと理解?して生成してくれません。
  • あと、VRAMが足りねぇ...。3070だときついです。

最後に

 結構、使える機能だとは思いますが、結局はガチャです。今回は1方向づつ生成していまが、全体方向にまとめて生成することも出来ます。ですが、確率がガクンと下がる気がします。

 やっぱ、これはこれで時間がかかるし、難しい~。