metadata
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.
- 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:
pip install git+https://huggingface.co/neek-ans/flowfeat
Load the default checkpoint:
from flowfeat_hf import flowfeat
model = flowfeat(name="dinov2_vits14_yt", pretrained=True)
model.eval()
Run inference:
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
@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},
}