FreeFlow-S
Collection
[ECCV'26] FreeFlow: A Bias-free Hierarchical Transformer for Optical Flow Estimation • 7 items • Updated • 1
Optical flow · 34,575,109 parameters
Clone the code repository and install the package (Python ≥3.10, PyTorch ≥2.5):
git clone https://github.com/msu-video-group/freeflow.git
cd freeflow
python -m pip install -e ".[examples]"
See the README for uv/Conda setup and CUDA installation. The examples below use a CUDA-enabled PyTorch build.
import numpy as np
import torch
from PIL import Image
from freeflow import FreeFlow
model = FreeFlow.from_pretrained("a-yakovenko/optical-flow-FreeFlow-S-sintel").eval().cuda()
images = torch.stack([
torch.from_numpy(np.array(Image.open(path).convert("RGB"))).permute(2, 0, 1)
for path in ["assets/frame1.jpg", "assets/frame2.jpg"]
])[None]
with torch.inference_mode(), torch.autocast("cuda", dtype=torch.bfloat16):
flow = model(images) # float32 [1, 2, H, W]
The model estimates optical flow between two equally sized RGB images. Input tensors have shape [B,2,3,H,W] with values in [0,255].
@inproceedings{bargatin2026freeflow,
title={FreeFlow: A Bias-free Hierarchical Transformer for Optical Flow Estimation},
author={Bargatin, Vladislav and Yakovenko, Alexander and Abud, Khaled and Vatolin, Dmitriy},
booktitle={European Conference on Computer Vision (ECCV)},
year={2026}
}
Base model
a-yakovenko/FreeFlow-S-pretrain