Repolode
OpenImagingLab

OpenImagingLab/FlashVSR

Wanベースのモデルを用いた、リアルタイムのアップスケーリングを目指す、ワンステップ拡散モデルベースのストリーミング動画超解像フレームワークです。

スター
1,934
フォーク
163
未解決の Issue
78
最終コミット
4 日前

これは何?

FlashVSRは、拡散モデルを使って動画フレームをストリーミング方式でアップスケールする動画超解像プロジェクトです。従来の拡散モデルベースのVSR手法では処理が遅く、メモリ消費も大きいため、ほぼリアルタイムでの処理が難しい実写映像、特に超高解像度の映像を対象に設計されています。

このフレームワークは、ワンステップのストリーミング推論を可能にする3段階の蒸留パイプライン、重複する計算を減らす局所性制約付きスパースアテンション、高速な再構成を実現する小型の条件付きデコーダを組み合わせています。開発者によると、単一のA100 GPUで768 × 1408の動画を約17 FPSで処理できます。リポジトリには、Hugging Faceで公開されているv1およびv1.1のモデル重みに対応した推論スクリプトが含まれており、full版とtiny版に加えて、長尺動画用のスクリプトも用意されています。主に4倍のアップスケーリングに最適化されています。

セットアップにはPython 3.11、Block-Sparse Attentionバックエンドのビルド、重みの取得に使うGit LFSが必要です。ライセンスはApache-2.0です。

主な機能

  • 01ストリーミング動画超解像向けに設計された、ワンステップの拡散モデル推論。
  • 02高解像度での計算量を抑える、局所性制約付きスパースアテンション。
  • 03フレームを高速に再構成する小型の条件付きデコーダ。
  • 04full版、tiny版、長尺動画向けを含む、v1およびv1.1の重みに対応した推論スクリプト。
  • 05主に4倍のアップスケーリングに最適化。

ユースケース

  • 拡散モデルならではの品質で、低解像度の映像を高解像度化する。
  • A100クラスのGPUで動画復元の実験を行う。
  • ストリーミングパイプラインで長尺動画をフレーム単位で処理する。

クイックスタート

  1. 1

    リポジトリをクローンする

    git clone https://github.com/OpenImagingLab/FlashVSR
  2. 2

    Python の依存関係をインストールする(Python 3.11.13。Block-Sparse Attention も README の手順に従って別途ビルドする)

    pip install -r requirements.txt
  3. 3

    Git LFS を使って、Hugging Face から推奨されている v1.1 のモデルの重みをダウンロードする

    git lfs clone https://huggingface.co/JunhaoZhuang/FlashVSR-v1.1
  4. 4

    examples/WanVSR から v1.1 tiny スクリプトで推論を実行する

    python infer_flashvsr_v1.1_tiny.py

使う前に知っておきたいこと

  • Block-Sparse Attention が必須で、ビルドには大量のメモリが必要です。
  • 主に NVIDIA A100/A800 および H200 でテストされています。RTX 40/50 シリーズなど、その他の GPU での動作は未検証です。
  • 主に 4× 超解像専用に設計・最適化されています。

トピック

よくある質問

FlashVSR とは?
Wanベースのモデルを用いた、リアルタイムのアップスケーリングを目指す、ワンステップ拡散モデルベースのストリーミング動画超解像フレームワークです。 FlashVSRは、拡散モデルを使って動画フレームをストリーミング方式でアップスケールする動画超解像プロジェクトです。従来の拡散モデルベースのVSR手法では処理が遅く、メモリ消費も大きいため、ほぼリアルタイムでの処理が難しい実写映像、特に超高解像度の映像を対象に設計されています。
FlashVSR は無料で使えますか?ライセンスは?
FlashVSR は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
FlashVSR は今もメンテナンスされていますか?
活発にメンテナンス中。FlashVSR の最終コミットは 2026年10月16日 です。
FlashVSR は何に使えますか?
拡散モデルならではの品質で、低解像度の映像を高解像度化する。 A100クラスのGPUで動画復元の実験を行う。 ストリーミングパイプラインで長尺動画をフレーム単位で処理する。
FlashVSR のインストール方法は?
リポジトリをクローンする: git clone https://github.com/OpenImagingLab/FlashVSR Python の依存関係をインストールする(Python 3.11.13。Block-Sparse Attention も README の手順に従って別途ビルドする): pip install -r requirements.txt Git LFS を使って、Hugging Face から推奨されている v1.1 のモデルの重みをダウンロードする: git lfs clone https://huggingface.co/JunhaoZhuang/FlashVSR-v1.1 examples/WanVSR から v1.1 tiny スクリプトで推論を実行する: python infer_flashvsr_v1.1_tiny.py
FlashVSR はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/OpenImagingLab/FlashVSR

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト