OpenImagingLab/FlashVSR
[CVPR 2026] Towards Real-Time Diffusion-Based Streaming Video Super-Resolution — An efficient one-step diffusion framework for streaming VSR with locality-constrained sparse attention and a tiny conditional decoder.
⚡ FlashVSR – 実時間拡散ベースのストリーミング動画スーパーレゾリューション
何であるか
- 通常4倍の低解像度動画を高解像度にアップスケーリングするため、高速化のために大幅に蒸留された拡散モデルを使用する研究用ライブラリ。
- 著者らは、NVIDIA A100 1台で768 × 1408の動画に対して約17 FPSを達成しており、実時間(近似実時間)で動作可能な初めての拡散ベースVSRシステムであると主張している。
なぜ重要か
- 拡散モデルは優れた視覚的品質を提供するが、通常は動画処理にはあまりに遅い。FlashVSRは以下の3つの技術的工夫でこの課題を解決している:
- 3段階の蒸留パイプライン – 大型の教師モデルを訓練し、それをストリーミングに適した軽量な生徒モデルに圧縮。フレーム単位で処理可能。
- 局所制約付きスパースアテンション(LCSA) – 小さな空間的・時系列的近傍にのみ注目することで、冗長な計算を削減し、訓練時と推論時の解像度のギャップを縮小。
- 超小型の条件付きデコーダ – 高コストな完全な拡散デコーダを使わず、細部を効率的に復元する軽量な再構成ヘッド。
- 大規模な学習に使用可能な新しいVSR-120Kデータセット(12万本の動画、18万枚の画像)が提供されている。
主な構成要素
| 構成要素 | 機能 |
|---|---|
| 3段階の蒸留 | 重い拡散教師モデルを、フレーム単位で実行可能なストリーミング用生徒モデルに変換。 |
| LCSA | 各トークンが近接するピクセル/フレームのみに注目するスパースアテンションマスク。FLOPsを劇的に削減。 |
| 超小型条件付きデコーダ | 蒸留された潜在表現を受け取り、最終的な高解像度フレームを生成する高速アップサンプリングヘッド。 |
| ブロックスパースアテンションバックエンド | 外部ライブラリ(MIT-HAN-Lab)で、LCSAに必要なカスタムスパースカーネルを実装。 |
| VSR-120Kデータセット | 大規模で多様な動画・画像コレクション。モデルの学習に使用。Hugging Faceで公開。 |
一般的なワークフロー
- インストール Pythonパッケージ(
pip install -e .)と必要なBlock-Sparse-Attentionライブラリをインストール。 - ダウンロード Hugging Faceから事前学習済み重み(v1.1が推奨、より安定)をGit LFSで取得。
- 実行 低解像度動画フレームのフォルダに対して、提供された推論スクリプト(
infer_flashvsr_v1.1_full.py、*_tiny.py、または長時間動画用バージョン)を実行。 - スクリプトは蒸留された拡散モデルをフレーム単位でストリーミング処理し、LCSAをリアルタイムで適用し、アップスケーリングされた動画を出力。
利用例
- ストリーミングプラットフォーム向けに4K/8K映像を高速かつ高品質にアップスケーリングが必要なコンテンツクリエイター。
- アップスケーリング動画のリアルタイムプレビューが価値あるポストプロダクションパイプライン。
- 効率的な拡散モデル、ストリーミング動画処理、スパースアテンション機構に関する研究。
インストールのハイライト
# リポジトリをクローン
git clone https://github.com/OpenImagingLab/FlashVSR && cd FlashVSR
# conda環境作成(Python 3.11)
conda create -n flashvsr python=3.11 && conda activate flashvsr
# パッケージと依存関係のインストール
pip install -e .
pip install -r requirements.txt
# Block-Sparse-Attentionのインストール(リポジトリ外)
git clone https://github.com/mit-han-lab/Block-Sparse-Attention && cd Block-Sparse-Attention
pip install packaging ninja
python setup.py install
GPU注意:NVIDIA A100/A800(Ampere)およびH200(Hopper)でテスト済み。コンシューマー向けRTX 40/50シリーズでのパフォーマンスは未確認。
推論の実行(例)
cd examples/WanVSR
# まずGit LFSでv1.1の重みをダウンロード(README参照)
python infer_flashvsr_v1.1_full.py # 全サイズデコーダ、最高品質
# または
python infer_flashvsr_v1.1_tiny.py # 小型デコーダ、高速、やや品質低め
スクリプトは自動的に重みフォルダ(FlashVSR-v1.1/)を検出し、アップスケーリングされた動画を出力する。
コミュニティとエコシステム
- 複数のComfyUIラッパーが存在するが、初期バージョンはLCSAモジュールを省略し、品質低下を引き起こしていた。
- 第三者クラウドサービス(fal.ai、WaveSpeed AI、Segmindなど)がモデルをホストし、Webベースの推論を容易にしている。
- 著者らはプロジェクトページ、Hugging Faceモデルリポジトリ、ダウンロード可能なデータセットを提供。
引用
@article{zhuang2025flashvsr,
title={FlashVSR: Towards Real-Time Diffusion-Based Streaming Video Super-Resolution},
author={Zhuang, Junhao and Guo, Shi and Cai, Xin and Li, Xiaohui and Liu, Yihao and Yuan, Chun and Xue, Tianfan},
journal={arXiv preprint arXiv:2510.12747},
year={2025}
}
結論:FlashVSRは、蒸留、スパースアテンション、超小型デコーダを組み合わせることで、拡散ベースの動画アップスケーリングをインタラクティブに使えるほど高速化した、本格的で最先端のAIプロジェクトである。高品質かつリアルタイムの動画スーパーレゾリューションが必要な人、あるいは効率的な拡散アーキテクチャを研究する研究者にとって最適なツールである。
関連
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch