NeuFlow: Real-time, High-accuracy Optical Flow Estimation on Robots Using Edge Devices

Zhiyong Zhang, Huaizu Jiang, Hanumant Singh
3/15/2024
cs.CVcs.AIcs.RO

Official code: neufieldrobotics/NeuFlow (102 stars, Apache-2.0, last commit 2024-08-22).

Abstract

Real-time high-accuracy optical flow estimation is a crucial component in various applications, including localization and mapping in robotics, object tracking, and activity recognition in computer vision. While recent learning-based optical flow methods have achieved high accuracy, they often come with heavy computation costs. In this paper, we propose a highly efficient optical flow architecture, called NeuFlow, that addresses both high accuracy and computational cost concerns. The architecture follows a global-to-local scheme. Given the features of the input images extracted at different spatial resolutions, global matching is employed to estimate an initial optical flow on the 1/16 resolution, capturing large displacement, which is then refined on the 1/8 resolution with lightweight CNN layers for better accuracy. We evaluate our approach on Jetson Orin Nano and RTX 2080 to demonstrate efficiency improvements across different computing platforms. We achieve a notable 10x-80x speedup compared to several state-of-the-art methods, while maintaining comparable accuracy. Our approach achieves around 30 FPS on edge computing platforms, which represents a significant breakthrough in deploying complex computer vision tasks such as SLAM on small robots like drones. The full training and evaluation code is available at https://github.com/neufieldrobotics/NeuFlow.

View on arXivView PDF

Code Implementations(1)

Apache-2.0
1026PythonMar 15, 20242 years agoApache-2.0

Similar Papers

Cite this paper

@article{zhang2024neuflow,
  title  = {NeuFlow: Real-time, High-accuracy Optical Flow Estimation on Robots Using Edge Devices},
  author = {Zhiyong Zhang and Huaizu Jiang and Hanumant Singh},
  year   = {2024},
  eprint = {2403.10425},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2403.10425v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2403.10425.svg)](https://codeofpaper.com/paper/2403.10425)

Discussion