EventCV library simplifies fast robotic vision with event cameras

The EventCV Library for Event-Based Robotic Vision

Robotics

Summary

Event cameras capture changes in brightness very quickly and use less power, which is useful for robots moving fast or in tricky lighting. But using these cameras in robots is hard because of incompatible file formats and lack of standardized tools. The authors created EventCV, a software library that makes it easier to work with event cameras by providing many useful functions and speeding up processing. They tested it on a small computer for robots and showed it can help with tasks like detecting objects and estimating motion.

What this means in practice

  • For robotics engineers: Process real-time event camera data in robots to improve tasks like object detection and localization using a single cohesive software library.
  • For embedded systems developers: Deploy efficient event camera data processing and machine learning inference on low-power devices like Jetson Orin AGX for fast robotic vision applications.

Authors

Adam D. Hines, Michael Milford, Tobias Fischer

Abstract

Event cameras detect per-pixel brightness changes asynchronously on microsecond timescales, with high dynamic range and low power draw. These are desirable properties for robots that move fast or work in difficult lighting conditions. However, integrating an event camera into a real-world robotic pipeline still requires substantial effort: plug-and-play drivers do not exist, event streams are recorded in a variety of incompatible file formats, and most projects rely on custom research-grade code. Here, we present EventCV, an open-source and extensible Rust library with OpenCV-style Python bindings that lowers the entry barrier to working with event cameras. EventCV provides a wide range of features: denoising filters and geometric transforms, augmentations, corner detection and unsupervised feature learning, contrast-maximization motion estimation, a video-to-events simulator, and Open Neural Network Exchange (ONNX) inference for deployment in robotic stacks. EventCV integrates the Neuromorphic Drivers package, allowing an event camera stream to be processed directly in real time. No existing toolkit covers this range of operations in one package, and EventCV builds representations and decodes files 1.1x to 3.7x faster than the currently available libraries. We deploy EventCV on a Jetson Orin AGX and present three robotics case studies spanning object detection, on-device model inference, and localization. Project webpage: https://eventcv.net.