AIフレーム補間でAIイラストをアニメーションさせてみるテスト
Google Researchで開発されたフレーム補間技術、FILM(Frame Interpolation for Large Motion)ってご存知ですか? 雑に言うと2枚の絵から動画を作れる技術なんですけど。
ぼくは昨日、初めて知りました。
引用元:https://github.com/google-research/frame-interpolation#film-frame-interpolation-for-large-motion
Stable Diffusionが世に出てからすぐにAIイラストのポーズをある程度指定できる拡張機能「ControlNet」、動画をフレームに分割し1枚1枚をマスク処理してAIイラストへ変換する拡張機能「Mov2Mov」が登場し、さらにはControlNetではReference Onlyというおおよそ同じ顔で違うポーズを出力する機能まで追加され、さらにさらにEBSynthというフレーム補間技術により、ぬるぬると動くようになったというではありませんか。相変わらず毎フレームごとに洋服の柄変わるのがギャグだけれども…。
ともあれ、そっち方面にはあんまし興味がわきませんでした。MMDのダンス動画が大好きだというのもあるのですが、ぬるぬる動くエロダンスならMMDで楽しめば良くないですか。エロモーションも山ほど開発されてるし。
そっち方向へ進むとせっかくの「欲望をプロンプトにたたきつけるだけで絵が出てくる!」という手軽さが損なわれるような気がするんですよねー。マジメにやったことないから詳しくは知らないんですけど、MMD動画でモーションから作るとかとんでもなく労力必要じゃないですか。このブログでやってるような古き良き(?)時代のFlashエロゲーくらいがぼくにはちょうど良いかな、と思うちょります。
がしかし、そんな中でもフレーム補間技術というか、モーフィングみたいな技術には興味があったんですよ。差分作成の手間を省いて楽できるかな?と。というわけで、
AIフレーム補間技術FILMで、スカートたくし上げやってみた
あー、そうかー。うーん。
このたった2枚の絵から60枚もの差分を作り出してくれるのはすごい。すごい…けど…うーん、そうかー…。
ちなみにこのFILMという技術、StableDiffusionと同じでPythonで開発されていますが、環境構築がすごくダルいです。一般には、Stable Diffusionの環境構築程度でもダルいと思う方もいるらしいですが、そんなの比じゃない。具体的な手順は下記ページで詳細に説明されていますので、興味のある方はどうぞ。
https://github.com/google-research/frame-interpolation/blob/main/WINDOWS_INSTALLATION.md
ざっくり言うと、Anaconda入れて、CUDA 11.2入れて、もしそれより新しいCUDAあったら入らないので最新のを消してから入れなおして、cuDNNも入れてパス通して、tensorflowの2.6入れて、FILM入れて学習モデルDLして…という感じ。
ぶっちゃけ面倒だし、CUDAがらみでハマって半日くらいつぶしたけど、ほんの少し前まではプロ向けにしか存在しなかったようなフレーム補間技術が、個人のパソコンで動かせるというのはそれだけでテンション爆上がりです。そんなぼくと同じような変態はぜひ入れて遊んでみてください。
今までの画像モーフィングって基本的には変形範囲を細かく指定する手作業が必須で、GIMPでいうところのゲージ変形みたいな手法なので、もっと手間がかかりました。FILMは環境構築こそ大変だけれど、出来てしまえばあとは絵を2枚ほおりこむだけでなーんも指定することなく、AIの学習モデルに従っていいかんじでフレーム生成してくれます。処理時間はうちのRTX4070マシンで2分程度でした。
7年前くらいに買ったテレビ(Bravia)にも120fps補間技術とか搭載されているので、もっと早く動画再生ソフトとかでも当たり前になるかと思ってたんですが、まさかのAI技術のほうが早かったですね。ちょっとびっくりです。
フレーム補間やモーフィングはトランジションとは違うのだぞ
余談ですが、モーフィングとトランジションの区別がつかない方がたまにおられるので、参考までにShotcut(動画編集ソフト)でパンチラトランジションも作ってみました。
動画で場面と場面が切り替わるときにふわっと消えたり、スライドしたり、回転したりするアレ。これはクロスディゾルブというカットが重なりながら切り替わっていくトランジションです。モーフィングとは全然違うでしょ。
エロゲでもよく使われるし、こういう切り替えだけでも別に良いとは思いますけどね。
GIMPのワープ変形でたくし上げをした場合
過去の記事でよく出てくるワープ変形の場合がこちら。
モデルはSweet Sugar Syndromeです。
比較用に作っただけなので雑で申し訳ない。
手順としては、
- Stable Diffusionでパンツだけ履いてる娘を生成
- その絵を基にInpaintで制服を着用した絵を生成
- GIMPで1の下半身と2の画像を重ねる
- GIMPで重ねた側(制服)の絵をワープ変形し、アニメーション作成ボタンで30枚くらい差分出力
- その差分をShotcutで読み込んで動画変換
書くと面倒くさそうだけど、慣れると30分もあれば出来るハズ。1~2分で差分作ってくれるFILMに比べるとだいぶ手間ではありますけどね。
スカートめくる加工やってる最中は楽しいよ!
おまけ
元絵を1024x1536pxという比較的大き目の絵で作ってしまったので30フレームしか生成してなくて、60フレームだとどうなのかな?と思って512x768pxサイズでも作ってみました。
…ぬるぬる具合はあんま変わんないね。スカートたくし上げくらいなら枚数少なくて良いのかも。それよりスカートのめくり方が不自然なのが気になる。そっちの動きのほうが大事。
モデルはCounterfeit V30です。このモデルは低解像度でも影の描きこみがすごいね。
まとめ
FILMを知った直後の期待値が大きすぎたせいもあり、やや残念な結果でした。
本来はフレーム補間技術なので動画で使うものだし、スカートたくし上げという、腕もスカートも大きく移動する題材が向いてなかったとも思えますが、うーん、うーん、うちではあまり活用できそうもないかなぁ。

















