見出し画像

ComfyUI AnimateDiffで戦前の映像をリマスターしてみる

  • Youtubeを見ていると、AIによって着色・高精細化した古い映像がアップされていたりします。

  • ComfyUI-AnimateDiffを利用すると、このようなモノクロ映像のAIリマスターを手軽に試すことができます。


必要な準備

ComfyUI本体の導入方法については、こちらをご参照ください。
今回の作業でComfyUIに追加しておく必要があるものは以下の通りです。

1. カスタムノード

2. モーションモジュール

  • 今回のワークフローでは「temporaldiff-v1-animatediff.ckpt」を使っています。

  • ダウンロード先は"/ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved/models/"です。

3. 画像生成モデル

  • 今回はできるだけ自然な動画を生成したいので、フルリアル系のモデルで人気の「Realistic Vision V5.1」を使ってみます。

  • 保存先は"/ComfyUI/models/checkpoints/"です。

4. アップスケーラー

  • 画質の改善のためアップスケーラーを併用します。今回は2倍アップスケールの「RealESRGAN_x2」で試します。

  • 保存先は"/ComfyUI/models/upscale_models/"です。

5. 元動画

  • この記事では、Wikipediaにアップされている1929年(昭和4年)の短編映画『太郎さんの汽車』から5秒ほどを抜粋して使用しました。

前処理(彩色)

  • まず、モノクロ映像をカラー化しておきます。モノクロ映像をカラー化するアプリは有償・無償をふくめ無数にあるので、よさげなものを使ってください。

  • ここでは「DeOldify」というオープンソースの彩色アプリを紹介しておきます。デスクトップ版のほか、Google Colab版やReplicateデモ版もあります。

ワークフロー

  • モノクロ映像の彩色が済んだら、Comfy UIで高精細化します。今回使用したワークフローはこちらです。

  • デスクトップにこのJSONファイルを保存し、ComfyUI画面にドラッグ&ドロップするとワークフローを読み込めます。

  • 左端のノード"Load Video"のchoose file to uploadから彩色した動画をアップします。

  • 右端のノード"Video Combine"のフレームレート(frame_rate)は、元動画に合わせます。

アウトプット

  • 「Queue Prompt」で実行すると、2倍にアップスケールしたうえでAnimateDiffで再構成された動画が出力されます。

  • Google Colabの標準GPU(VRAM 16GB)で試したところ、480x360の5秒間の動画を処理するのに10分弱かかりました。

  • 生成動画が元動画と乖離してしまう(人の顔が大きく変わってしまう等)場合は、プロンプトを工夫するほか、ControlNetのLineartと併用すると改善しました。

関連記事

  • ComfyUI AnimateDiffについての記事は、以下のnoteにまとめています。