Commit Β·
88b60b8
0
Parent(s):
Duplicate from ruchangyao/FlashVSR_plus
Browse filesCo-authored-by: yaoruchang <ruchangyao@users.noreply.huggingface.co>
- .gitattributes +35 -0
- README.md +83 -0
- TCDecoder.ckpt +3 -0
- Wan2.1_VAE.pth +3 -0
- base/dit.safetensors +3 -0
- base/lq_proj_in.safetensors +3 -0
- config.json +17 -0
- turbo/dit.safetensors +3 -0
- turbo/lq_proj_in.safetensors +3 -0
.gitattributes
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
| 2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
| 3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
| 4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
| 5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
| 6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
| 7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
| 8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
| 9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
| 10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
| 11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
| 12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
| 13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
| 14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
| 15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
| 16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
| 17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
| 18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
| 19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
| 20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
| 21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
| 22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
| 23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
| 24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
| 25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
| 26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
| 27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
| 28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
| 29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
| 30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
| 31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
| 32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
datasets:
|
| 4 |
+
- ruchangyao/FlashVSR_Plus_Dataset
|
| 5 |
+
base_model:
|
| 6 |
+
- Wan-AI/Wan2.1-T2V-1.3B
|
| 7 |
+
pipeline_tag: video-to-video
|
| 8 |
+
tags:
|
| 9 |
+
- video-super-resolution
|
| 10 |
+
- video-restoration
|
| 11 |
+
- flashvsr
|
| 12 |
+
---
|
| 13 |
+
|
| 14 |
+
# FlashVSR+: Efficient Video Super-Resolution via Hybrid Attention and Reward-Yield Distribution Matching
|
| 15 |
+
|
| 16 |
+
<div align="center">
|
| 17 |
+
|
| 18 |
+
[**Project Page**](https://flashvsr.tech) | [**Paper**](https://arxiv.org/abs/2610.17552) | [**GitHub**](https://github.com/OpenImagingLab/FlashVSR_Plus) | [**Dataset**](https://huggingface.co/datasets/ruchangyao/FlashVSR_Plus_Dataset)
|
| 19 |
+
|
| 20 |
+
</div>
|
| 21 |
+
|
| 22 |
+
## Overview
|
| 23 |
+
|
| 24 |
+
**FlashVSR+** is an efficient one-step diffusion framework for high-quality video super-resolution, enabling **spatially untiled 4K inference on a single 24GB RTX 4090 GPU**.
|
| 25 |
+
|
| 26 |
+
FlashVSR+ introduces two key innovations:
|
| 27 |
+
|
| 28 |
+
- **Hybrid Attention:** Exploits spatial and temporal attention locality while retaining sparse global interactions, achieving up to **2Γ DiT acceleration** and **45% lower peak memory**.
|
| 29 |
+
- **Reward-Yield Distribution Matching Distillation (RY-DMD):** Enables preference alignment with black-box rewards without differentiating through the reward model, improving perceptual quality and generalizing to text-to-image generation.
|
| 30 |
+
|
| 31 |
+
For visual comparisons and additional results, please visit our [project page](https://flashvsr.tech).
|
| 32 |
+
|
| 33 |
+
## Released Models
|
| 34 |
+
|
| 35 |
+
We provide two FlashVSR+ variants:
|
| 36 |
+
|
| 37 |
+
| Model | Description |
|
| 38 |
+
|---|---|
|
| 39 |
+
| **FlashVSR+ Turbo** | Faster inference, recommended for efficient high-resolution video super-resolution. |
|
| 40 |
+
| **FlashVSR+ Base** | Higher-quality restoration, recommended when reconstruction quality is the priority. |
|
| 41 |
+
|
| 42 |
+
Both models support one-step inference and share the same decoder.
|
| 43 |
+
|
| 44 |
+
## Model Files
|
| 45 |
+
|
| 46 |
+
The released checkpoints are organized as follows:
|
| 47 |
+
|
| 48 |
+
```text
|
| 49 |
+
ckpts/
|
| 50 |
+
βββ turbo/
|
| 51 |
+
β βββ dit.safetensors
|
| 52 |
+
β βββ lq_proj_in.safetensors
|
| 53 |
+
βββ base/
|
| 54 |
+
β βββ dit.safetensors
|
| 55 |
+
β βββ lq_proj_in.safetensors
|
| 56 |
+
βββ TCDecoder.ckpt
|
| 57 |
+
βββ Wan2.1_VAE.pth
|
| 58 |
+
```
|
| 59 |
+
|
| 60 |
+
- `dit.safetensors`: Main diffusion transformer weights.
|
| 61 |
+
- `lq_proj_in.safetensors`: Low-quality video conditioning weights.
|
| 62 |
+
- `TCDecoder.ckpt`: Shared decoder used by the default inference pipeline.
|
| 63 |
+
- `Wan2.1_VAE.pth`: Optional VAE decoder weights.
|
| 64 |
+
|
| 65 |
+
## Citation
|
| 66 |
+
|
| 67 |
+
If you find FlashVSR+ useful, please cite:
|
| 68 |
+
|
| 69 |
+
```bibtex
|
| 70 |
+
@misc{yao2026flashvsrefficientvideosuperresolution,
|
| 71 |
+
title={FlashVSR+: Efficient Video Super-Resolution via Hybrid Attention and Reward-Yield Distribution Matching},
|
| 72 |
+
author={Ruchang Yao and Shi Guo and Junhao Zhuang and Mingde Yao and Xin Cai and Jiahao Zhan and Bin Fu and Xinyuan Chen and Yu Qiao and Tianfan Xue},
|
| 73 |
+
year={2026},
|
| 74 |
+
eprint={2610.17552},
|
| 75 |
+
archivePrefix={arXiv},
|
| 76 |
+
primaryClass={cs.CV},
|
| 77 |
+
url={https://arxiv.org/abs/2610.17552}
|
| 78 |
+
}
|
| 79 |
+
```
|
| 80 |
+
|
| 81 |
+
## Acknowledgements
|
| 82 |
+
|
| 83 |
+
FlashVSR+ builds upon the original [FlashVSR](https://arxiv.org/abs/2510.12747). We thank the authors of the open-source projects and pretrained models that support this work.
|
TCDecoder.ckpt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e224bdcf2f52745cbf4d393ff5374c2ba09e90285d5d19062d2bf63b915b6161
|
| 3 |
+
size 189018333
|
Wan2.1_VAE.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:38071ab59bd94681c686fa51d75a1968f64e470262043be31f7a094e442fd981
|
| 3 |
+
size 507609880
|
base/dit.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:58d64c1f1b3a559bafb69bb014f3ab2745e800c89435afdc154966eb96bc7459
|
| 3 |
+
size 5676070392
|
base/lq_proj_in.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a1fe997f19060171db8dd4d58c30debc78ddfcc357b63481798792a38a356d8d
|
| 3 |
+
size 1151384272
|
config.json
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model_name": "FlashVSR+",
|
| 3 |
+
"task": "video-super-resolution",
|
| 4 |
+
"framework": "pytorch",
|
| 5 |
+
"variants": {
|
| 6 |
+
"base": {
|
| 7 |
+
"path": "base"
|
| 8 |
+
},
|
| 9 |
+
"turbo": {
|
| 10 |
+
"path": "turbo"
|
| 11 |
+
}
|
| 12 |
+
},
|
| 13 |
+
"components": {
|
| 14 |
+
"vae": "Wan2.1_VAE.pth",
|
| 15 |
+
"decoder": "TCDecoder.ckpt"
|
| 16 |
+
}
|
| 17 |
+
}
|
turbo/dit.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7862b92178176fa3aebc34c6c071daca6b56ab1dddb8e7ff9a01c47f5226ec8b
|
| 3 |
+
size 5676070392
|
turbo/lq_proj_in.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e77b378ae12342eefbb58f924256f362a151b93ce73dd32808fcdaca9c051496
|
| 3 |
+
size 1151384272
|