# princeton-vl/raft

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/princeton-vl-raft).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

4,057 stars · 677 forks · Python · BSD-3-Clause

## Links

- GitHub: https://github.com/princeton-vl/RAFT
- awesome-repositories: https://awesome-repositories.com/repository/princeton-vl-raft.md

## Description

RAFT is a PyTorch computer vision framework and deep learning system designed for optical flow estimation. It functions as a GPU-accelerated motion estimator that calculates per-pixel motion vectors between video frames to determine object movement.

The implementation utilizes recurrent all-pairs field transforms and custom CUDA kernels to optimize the memory and compute overhead associated with high-dimensional correlation calculations. This hardware-level acceleration reduces GPU memory usage during the forward pass.

The toolkit covers supervised flow learning and model training using mixed-precision formats. It also includes capabilities for video motion analysis and benchmarking model accuracy against standard optical flow datasets.

## Tags

### Artificial Intelligence & ML

- [Optical Flow Computation](https://awesome-repositories.com/f/artificial-intelligence-ml/vector-field-estimation/optical-flow-computation.md) — Provides a system for estimating per-pixel motion vectors between consecutive video frames. ([source](https://github.com/princeton-vl/raft#readme))
- [Deep Learning Motion Tracking Toolkits](https://awesome-repositories.com/f/artificial-intelligence-ml/deep-learning-motion-tracking-toolkits.md) — Provides an integrated toolkit combining neural network training with optical flow analysis and accuracy measurement.
- [Deep Learning Training Toolsets](https://awesome-repositories.com/f/artificial-intelligence-ml/deep-learning-training-toolsets.md) — Provides a complete software suite for training and optimizing deep neural networks for motion estimation.
- [Vision Model Training](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-training-and-tuning/training-frameworks/model-training-frameworks/vision-model-training.md) — Provides a training framework for vision models supporting specific motion datasets and training schedules. ([source](https://github.com/princeton-vl/raft#readme))
- [Optical Flow Models](https://awesome-repositories.com/f/artificial-intelligence-ml/optical-flow-models.md) — Implements a deep learning system using recurrent all-pairs field transforms for per-pixel motion estimation.
- [PyTorch Computer Vision Pipelines](https://awesome-repositories.com/f/artificial-intelligence-ml/pytorch-computer-vision-pipelines.md) — Provides a research-oriented computer vision pipeline built using the PyTorch framework.
- [Computer Vision Benchmarks](https://awesome-repositories.com/f/artificial-intelligence-ml/computer-vision-benchmarks.md) — Evaluates the accuracy of motion estimation models against standardized computer vision datasets.
- [Feature Map Samplers](https://awesome-repositories.com/f/artificial-intelligence-ml/feature-extraction/convolutional-feature-extractors/feature-map-aggregators/feature-map-samplers.md) — Extracts local descriptors from image feature maps to build the cost volumes used for motion estimation.
- [GPU Memory Optimizers](https://awesome-repositories.com/f/artificial-intelligence-ml/gpu-memory-optimizers.md) — Reduces VRAM usage during the forward pass via specialized hardware extensions for correlation calculations. ([source](https://github.com/princeton-vl/raft#readme))
- [Hardware Acceleration Kernels](https://awesome-repositories.com/f/artificial-intelligence-ml/hardware-acceleration-kernels.md) — Provides optimized computational kernels to offload intensive correlation calculations to the GPU.

### Part of an Awesome List

- [GPU-Accelerated Motion Estimators](https://awesome-repositories.com/f/awesome-lists/ai/video-restoration/gpu-accelerated-motion-estimators.md) — Uses specialized CUDA kernels to accelerate the computation of motion vectors on the GPU.
- [Motion Estimation Networks](https://awesome-repositories.com/f/awesome-lists/ai/video-restoration/motion-estimation-networks.md) — Implements a neural network architecture specialized in calculating pixel-wise motion vectors for video sequences.
- [Optical Flow Estimation](https://awesome-repositories.com/f/awesome-lists/more/optical-flow-estimation.md) — Listed in the “Optical Flow Estimation” section of the Ailia Models awesome list.

### Graphics & Multimedia

- [Supervised Motion Learning](https://awesome-repositories.com/f/graphics-multimedia/optical-flow-processing/supervised-motion-learning.md) — Optimizes model weights by minimizing the difference between predicted motion fields and ground truth optical flow labels.

### Testing & Quality Assurance

- [Model Accuracy Evaluators](https://awesome-repositories.com/f/testing-quality-assurance/model-accuracy-evaluators.md) — Measures the correctness of trained motion models against benchmark datasets to determine estimation quality. ([source](https://github.com/princeton-vl/raft#readme))
