Code Monkey home page Code Monkey logo

rpg_corner_events's Introduction

Fast Event-based Corner Detection

Inspired by frame-based pre-processing techniques that reduce an image to a set of features, which are typically the input to higher-level algorithms, we propose a method to reduce an event stream to a corner event stream. Our goal is twofold: extract relevant tracking information (corners do not suffer from the aperture problem) and decrease the event rate for later processing stages. Our event-based corner detector is very efficient due to its design principle, which consists of working on the Surface of Active Events (a map with the timestamp of the latest event at each pixel) using only comparison operations. Our method asynchronously processes event by event with very low latency. Our implementation is capable of processing a million events per second on a single core (less than a micro-second per event) and reduces the event rate by a factor of 10 to 20.

corners_screenshot Left: image with all events, right: image with only corner events. Event color depicts polarity (i.e., the sign of the brightness change).

YouTube video

This code also contains the Spatially-Adaptive Harris Method used for comparison. For more details, please read our BMVC'17 paper or have look at the poster.

Publication

If you use this code in an academic context, please cite the following BMVC'17 publication:

E. Mueggler, C. Bartolozzi, D. Scaramuzza: Fast Event-based Corner Detection. British Machine Vision Conference (BMVC), London, 2017.

@inproceedings{Mueggler17BMVC,
 author = {Mueggler, Elias and Bartolozzi, Chiara and Scaramuzza, Davide},
 title = {Fast Event-based Corner Detection},
 booktitle = {British Machine Vision Conference (BMVC)},
 year = {2017}
}

Disclaimer and License

This code has been tested with ROS kinetic on Ubuntu 16.04. This is research code, expect that it changes often and any fitness for a particular purpose is disclaimed. The source code is released under a GNU General Public License (GPL). For a commercial license, please contact the Davide Scaramuzza

Instructions

Installation

  1. Install the DVS/DAVIS ROS driver (you only need the dvs_msgs and dvs_renderer packages).
  2. Clone the repository to your ROS workspace
    git clone https://github.com/uzh-rpg/rpg_corner_events
    
  3. Build it using the following command:
    roscd corner_event_detector
    catkin build --this
    

Using a Dataset

To get a bag file from the Event-Camera Dataset:

wget http://rpg.ifi.uzh.ch/datasets/davis/shapes_6dof.bag

Run the detector and visualization launch file:

roslaunch corner_event_detector bag.launch

In a separate terminal, run a bag file, e.g.:

rosbag play shapes_6dof.bag

Using the DAVIS Event Camera (Live Mode)

Please run the file:

roslaunch corner_event_detector davis_live.launch

rpg_corner_events's People

Contributors

eliasm avatar guillermogb avatar mfaessle avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

nuaayxy

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.