Menu

About jAER

Tobi Delbruck Luca Longinotti

What is jAER?

jAER is a Java software project that allows soft real time event-driven processing with address-event representation (AER) systems on PCs.

The architecture of jAER is described in delbruckEventBasedVision_GCOE_Symp_2008.pdf, with a focus in processing Dynamic Vision Sensor silicon retina output.

jAER systems include dymamic vision sensor silicon retinasAER monitor/sequencer boards developed in the EU CAVIAR project, silicon cochleas, servo motor controllers, and optical flow chips.

jAER is centered around an application, jAERViewer that allows you to plug in an AER device with a USB interface, and then view the events coming from the device, log them to disk, play them back, and probably most important, process them efficiently for applications.

For instance, if you use a silicon retina, you can process the events from the retina to track objects, extract low level features, clean up the output of the retina, and do fast visual robotics.
If you use a generic AER monitor interface, you can display the outputs of your AER chip in real time.

jAER also supports chips with programmable bias current generators to provide persistent GUI control of chip biases and includes full design kits with sample schematics, chip layout, board design, firmware, etc. jAER also can control hardware USB boards that control servo motors, so you can use jAER for building fast robotic systems using AER hardware.

The screen shots below show jAER rendering the output from 3 chips simultaneously using various views of the spike events.

What is AER?

AER stands for the address-event representation.
Brains use spikes for long-range communication between neurons. Spikes are binary digital events that occur in analog time. When one neuron wants to send information to another one far away, it uses a digital spike that travels along its connections to other neurons. In neuromorphic electronic systems that use AER, spikes are represented as digital addresses (either of source or target) leading to the address-event representation. Chips that use AER often use asynchronous logic to handle the communication of AER data. Using AER, chips can communicate ensembles of neural information in the sparse, data-driven manner that seems to be a foundation of brain architecture.

In jAER, the notions of binary spikes are extended to a more general notion of "events" that can carry along entire data structures of information, e.g. edge orientation, binocular disparity, object category, etc. You can extend the BasicEvent class to attach any kind of annotation you want.


Related

Wiki: Home
Wiki: biasgen