VQ FAST-VQA Score (No-Reference)
High-res, short, full of noise
- video
- quality_score
- summary
A lot of video quality models cheat by resizing your video down to something tiny and scoring that. That's exactly the wrong move for AI video, where the artifacts you care about - compression blocking, upscaling halos, noise - live in the details that downscaling erases. FAST-VQA was designed to avoid that trap, and this node wraps it so you can drop it straight into a workflow.
You reach for it when you've generated a video and want a single no-reference quality number without pulling in a reference clip. It's a good middle ground between the CLIP aesthetic vibe check and the heavier full-reference metrics: it actually understands compression and noise, not just "does this look like a nice photo."
How it works
FAST-VQA uses Grid Mini-patch Sampling (GMS). Instead of shrinking your 4K clip to a postage stamp, it carves the frame into a grid of small patches and samples them at full resolution, so fine-grained artifacts survive. Those fragments go through a Fragment Attention Network that was trained on large-scale perceptual quality data with human labels. The pack auto-downloads the pretrained weights on first use - roughly 200 MB (FAST_VQA_B_1_4.pth) from the VQAssessment FAST-VQA GitHub releases - and caches them in ~/.cache/video_quality_metrics. The output is a 0–1 score calibrated to human opinion (mean opinion score), which is why it tends to agree with you more than CLIP does.
Inputs and outputs
This is about as spartan as a node gets. Required:
video(IMAGE) - your[T, H, W, 3]frame tensor.
No optional inputs at all.
Outputs:
quality_score(FLOAT) - the 0–1 no-reference quality score. The number to track across runs.summary(STRING) - a report including the score, how many fragments were sampled, and the grid size. Good for a text display node.
Rough calibration from the pack: above ~0.7 is genuinely good, 0.5–0.7 decent, 0.35–0.5 fair, below 0.35 you're producing noise. Watch the trends more than the absolute value.
Installing
It's part of the ComfyUI-VideoQuality-Metrics pack - install it once and you get all the VQ nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/jajos12/ComfyUI-VideoQuality-Metrics
pip install -r ComfyUI-VideoQuality-Metrics/requirements.txt
Restart ComfyUI, find it under Video Quality/FAST-VQA in the node menu (or search the pack title in ComfyUI Manager). The pack itself is young and lightly used - this node in particular has had barely any real-world mileage, so expect the occasional rough edge and check the repo for fixes.
Common issues
- First run downloads ~200 MB of weights and will appear frozen while it does. Not a crash.
- Slow on long/high-res videos - the grid sampling is the cost. There's no frame-count input on this node to trim it, so if it's too slow, trim the video upstream or use DOVER (which does let you set
num_frames) for quick passes. - Score reads low on stylized content - FAST-VQA was trained mostly on real video, and heavy stylization or animation can score worse than it looks. Use it as a relative measure between your own outputs.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| video | IMAGE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| quality_score | FLOAT | — |
| summary | STRING | — |