15

Algorithmic Processing of Event Streams

@Description("Subsamples x and y addresses") public class SubSampler extends EventFilter2D {      /** Process the packet.      * @param in the input packet      * @return out the output packet      */     synchronized public EventPacket filterPacket(EventPacket in) {         OutputEventIterator oi=out.outputIterator(); // get the iterator to return output events         for(BasicEvent e:in){ // for each input event             BasicEvent o=(BasicEvent)oi.nextOutput(); // get an unused output event             o.copyFrom(e); // copy the input event to the output event             o.x = o.x>>bits; // right shift the x and y addresses             o.y = o.y>>bits;         }         return out; // return the output packet     } }

This chapter describes event-driven algorithmic processing of AE data streams on digital computers. Algorithms fall into categories such as noise-reduction filters, event labelers, and trackers. The data structures and software architectures are also discussed as well as requirements for software and hardware infrastructure.1

15.1   Introduction

As AER sensors such as the retinas of Chapter 3 and the cochleas of Chapter 4 and their supporting hardware infrastructure have evolved, it has become clear that the most rapid way to take advantage of this new hardware is by developing algorithms for processing the data from the devices on conventional computers. This approach allows rapid development and performance ...

Get Event-Based Neuromorphic Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.