このページの本文へ

新清士の「メタバース・プレゼンス」 第105回

“イリヤ神”がまたやった 動画生成AI「FramePack」が革命的なワケ

2025年05月05日 07時00分更新

文● 新清士

  • この記事をはてなブックマークに追加
  • 本文印刷

“前後”を同時に考えさせることで一貫性を維持

 もうひとつ、FramePackの革命的と言うべき発想が、重要なキャラクターなどに一貫性を与えるための方法論です。

 これまでの動画生成AIによるi2vでは、後のフレームに行くにしたがい、最初の画像から乖離していってしまう難点がありました。フレームを生成する際、直前のフレームを参照するためにノイズが混入してしまいます。数秒程度であればズレは小さく済みますが、5秒、8秒、10秒──と動画が長くなるに従って、破綻が激しくなります。これは「ドリフト問題」と呼ばれています。ドリフト問題の対策として、最初と最後の画像を指定することで、途中のくずれをごまかす「キーフレーム」という手法が出てきました。それでも限界があり、数十秒という長尺の動画を作ることはできなかったんですね。

 そこにイリヤさんが解決策として持ち込んだのが、1枚の画像から「前と後ろを同時に考えさせる」ことで一貫性を確保しやすくする、「双方向サンプリング」という方法でした。

 この方法ではまず、参照画像を、最初の1秒分の動画の任意の場所に──主に中央ですが──「アンカー(錨)」となるフレームとして設定します。そして最初と最後のフレームがどうなるかを、アンカーフレームから“逆算”し、各フレームの生成前に計算しているんですね。そして、アンカーフレームの前後で生成した動画により、整合性が破綻していないかクロスチェックさせている。この仕組みによって破綻を減少させているようです。

FramePackのUI。右上に「双方向サンプリング」のプレビュー結果が表示されている

 さらに、1回目で作成したアンカーフレームは、動画のなかでベクトル情報に変換され、中間表現や構造情報として、2回目以降の生成にも情報として参照されるようになっています。これにより、2秒目以降に生成される動画でも、元の参照画像よりも、大きくズレた絵が出ないという仕組みになっています。2回目に新しい動きがつけられたとしても、おなじアンカーが使われるので一貫性が維持できるということですね。こうすることで、非常に長い動画を生成してもある程度の一貫性を担保することができます。

 さらに面白いのは、動画を生成する順番として、「前から後ろに」ではなく、「後ろから前に」作っていくやり方を取っている点です。前から作った場合、動画の「オチ」が予想できません。一方、後ろから前に作っていけば事前に「オチ」が決まるため、そのオチにどう近づけていくかを考えることで、全体の一貫性がブレにくくなるというわけです。

 これを指定秒数分、何度も生成を繰り返していくことで、UI設定上では120秒という長尺の動画でも、破綻を少なく生成できるようになっているというわけです。明日来子さんの画像から30秒の動画を生成したところ、筆者のNVIDIA RTX 4090のマシンでは、一定の一貫性を維持したまま、約30分ほどで生成することができました。

▲明日来子さんの30秒のダンス動画。「日本人の女性のダンス」とプロンプトに記載したために、服装が影響を受けて和服のようなものになっている。アニメーションはスムーズだが、指が曖昧になる問題が起きている

“弱い”情報はぼやけやすくなるのが難点

 ただ、それもやはり弱点があります。ひとつは、同じアンカーフレームを参照するので、劇的な変化を起こしにくいということ。もうひとつは、アンカーフレームはベクトル情報なので、画像そのままに比べて、詳細情報が弱くなりやすいということです。たとえば、筆者の会社で開発しているゲーム「Exelio -エグゼリオ-」に登場するカエルくんを3D画像から動画にしてみました。すると、14秒の動画のうち、順番的には後から生成される前半ほど指が曖昧につぶれていることがわかります。指はトークンのなかでは詳細情報が弱くなっていくため、ぼけてしまうんですね。こうした特性を理解しつつ、うまく使う必要があります。

▲3Dモデルからのアニメーションの例。14秒のうち、特に前半で指が崩れるのが顕著

カテゴリートップへ

この連載の記事
ピックアップ