File size: 2,067 Bytes
d883828
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
958dba1
 
d883828
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
---
license: apache-2.0
library_name: pytorch
pipeline_tag: image-feature-extraction
tags:
- computer-vision
- dense-features
- optical-flow
- image-feature-extraction
- pytorch
---

# FlowFeat

FlowFeat is a pixel-dense visual representation learned from optical flow, released with the NeurIPS 2025 Spotlight paper [FlowFeat: Pixel-Dense Embedding of Motion Profiles](https://arxiv.org/abs/2511.07696).

- Paper page: https://hf.co/papers/2511.07696
- Project code: https://github.com/tum-vision/flowfeat
- Interactive demo: https://huggingface.co/spaces/neek-ans/flowfeat-demo

This model repo is focused on **easy access to pretrained checkpoints** and a **clean inference path**. It does **not** re-host training data.

## Included variants

| Variant | Backbone | Checkpoint file |
| :-- | :-- | :-- |
| `dinov2_vits14_yt` | DINOv2 ViT-S/14 trained on YouTube-VOS | `dino2_s14_flowfeat_yt.pth` |
| `dinov2_vitb14_yt` | DINOv2 ViT-B/14 trained on YouTube-VOS | `dino2_b14_flowfeat_yt_v2.pth` |
| `dinov2_vitb14_kt` | DINOv2 ViT-B/14 trained on Kinetics | `dino2_b14_flowfeat_kt_v2.pth` |

## Quickstart

Install directly from this repo:

```bash
pip install git+https://huggingface.co/neek-ans/flowfeat
```

Load the default checkpoint:

```python
from flowfeat_hf import flowfeat

model = flowfeat(name="dinov2_vits14_yt", pretrained=True)
model.eval()
```

Run inference:

```python
import torch

x = torch.randn(1, 3, 224, 224)
with torch.no_grad():
    y_enc, y_dec = model(x)

print(y_enc.shape)
print(y_dec.shape)
```

## Notes

- The repo packages only the inference-time code needed to load FlowFeat and its decoder.
- Backbone weights are still resolved through the upstream DINO / DINOv2 loading path used by the original research code.
- Checkpoint files are hosted in this repo under `checkpoints/`.

## Citation

```bibtex
@inproceedings{Araslanov:2025:FlowFeat,
  author = {Araslanov, Nikita and Sonnweber, Anna and Cremers, Daniel},
  title = {{FlowFeat}: Pixel-Dense Embedding of Motion Profiles},
  booktitle = {NeurIPS},
  year = {2025},
}
```