Views
No views yet
blanchon/dinoflow-dataset.src/dinov3_dense).WeightedFusion
collapses each frame's 4 tapped layers into a feature grid at stride H/16.SpatialDetailEnhancer → two learned DySample ×4 stages — upsamples back to
full resolution, and a final conv emits 2 channels (u, v) instead of single-channel disparity.1from huggingface_hub import hf_hub_download
2from safetensors.torch import load_file
3from dinov3_dense.head import FlowModel, FlowModelConfig
4
5model = FlowModel.from_pretrained(FlowModelConfig(backbone="vits16"))
6model.head.load_state_dict(load_file(hf_hub_download("blanchon/dinoflow-model", "flow-vits16.safetensors")))
7model.eval()
8
9# image1, image2: float [B, 3, H, W] in [0, 1], H/W multiples of 16
10flow = model(image1, image2) # [B, 2, H, W] -> (u, v) pixels, frame1 -> frame2anyflow-benchmark. EPE in px, lower is better.| Method (C+T) | Sintel-clean EPE | Sintel-final EPE | KITTI-15 EPE | KITTI-15 Fl-all |
|---|---|---|---|---|
| RAFT | 1.43 | 2.71 | 5.04 | 17.4% |
| FlowFormer | 1.01 | 2.40 | 4.09 | 14.7% |
| SEA-RAFT | 1.19 | 4.11 | 3.62 | 12.9% |
| DinoFlow ViT-S (ours) | 3.97 | 5.06 | 19.79 | 61.6% |
[2, 5, 8, 11], ImageNet-normalized input.anyflow-train command.