# Kitti Optical Flow Eval

> Evaluates the accuracy of unsupervised optical flow estimation methods on standard driving scenes. It measures the pixel-wise displacement error between predicted and ground-truth flow fields to quantify estimation quality. Use when the user wants to benchmark on KITTI2012, or asks about evaluating this task. Reports EPE.

- Skill: `qhjqhj00/kitti-optical-flow-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/kitti-optical-flow-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/kitti-optical-flow-eval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: qhjqhj00 (https://skillmd.com/u/qhjqhj00)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/qhjqhj00/kitti-optical-flow-eval

---


# kitti-optical-flow-eval

> Occlusion Aware Unsupervised Learning of Optical Flow From Video — Jianfeng Li et al. (arXiv:2003.01960, 2020)

## What this evaluates

Evaluates the accuracy of unsupervised optical flow estimation methods on standard driving scenes. It measures the pixel-wise displacement error between predicted and ground-truth flow fields to quantify estimation quality.

## Datasets

- **KITTI2012** — total ?; splits: train (40864), val (3822)

## Metrics

- `EPE` **(primary)** — range: other
  - Average Euclidean distance between estimated and ground-truth optical flow vectors across all pixels.

## Input / output format

**Input**: Consecutive video frames (e.g., frame t and frame t+1) resized to 832x256.

**Output**: A 2-channel optical flow field representing horizontal and vertical displacement per pixel.

## Scoring recipe

```python
def compute_epe(pred_flow, gt_flow):
    diff = pred_flow - gt_flow
    epe = np.mean(np.sqrt(diff[..., 0]**2 + diff[..., 1]**2))
    return epe
```

## Common pitfalls

- The paper does not specify whether EPE is computed over the entire image or only valid ground-truth pixels, which can significantly affect reported values.
- The method is trained unsupervised using photometric loss but evaluated on supervised KITTI benchmarks, creating a potential train-test distribution mismatch.

## Evidence (verbatim from paper)

> For evaluation, we use end-point error (epe) which is defined as the average Euclidean distance between estimated and ground-truth optical flows.

## Citation

```bibtex
@misc{li2020occlusion,
  title={Occlusion Aware Unsupervised Learning of Optical Flow From Video},
  author={Jianfeng Li et al.},
  year={2020},
  note={arXiv:2003.01960}
}
```

- arXiv: 2003.01960

