ANVIL โ Accelerator-Native Video Interpolation
Pretrained weights and ONNX models for the ANVIL video frame interpolation system.
ANVIL achieves 1080p INT8 real-time frame interpolation on mobile NPUs by replacing learned optical flow with codec motion vector prealignment, producing an NPU-friendly inference graph dominated by standard convolutions.
Models
| Model | Params | Vimeo90K PSNR | Xiph 1080p PSNR | HTP V75 INT8 (avg) |
|---|---|---|---|---|
| ANVIL-S | 855K | 33.45 dB | 29.65 dB | 12.8 ms |
| ANVIL-M | 2.66M | 33.66 dB | 29.74 dB | 16.7 ms |
| NAFNet-ceiling | 17.1M | 34.58 dB | 30.30 dB | โ |
Capacity sweep models (D-tiny through D-unet-l, 1.8Kโ289K params) are included under checkpoints_capacity/.
File Structure
checkpoints/
D-unet-v3bs-nomv/best.pt # ANVIL-S (10 MB)
D-unet-v3bm-nomv/best.pt # ANVIL-M (31 MB)
D-nafnet-nomv/best.pt # NAFNet ceiling (197 MB)
checkpoints_capacity/
D-tiny-nomv/best.pt # 1.8K params
D-mini-nomv/best.pt # 10.6K params
D-mid-nomv/best.pt # 33K params
D-unet-s-nomv/best.pt # 129K params
D-unet-l-nomv/best.pt # 289K params
onnx/
D_unet_v3bs_nomv_1080p.onnx # ANVIL-S 1080p (BN fused)
D_unet_v3bm_nomv_1080p.onnx # ANVIL-M 1080p (BN fused)
Usage
git clone https://github.com/NihilDigit/anvil && cd anvil
pixi install
pixi run download-weights # downloads to artifacts/
pixi run reproduce-main-quality
Links
- Paper repository: github.com/NihilDigit/anvil
- Android demo: github.com/NihilDigit/mpv-android-anvil
License
MIT