jAER project on SourceForge

net.sf.jaer.eventprocessing.filter
Class BoredomFilter

java.lang.Object
  extended by net.sf.jaer.eventprocessing.EventFilter
      extended by net.sf.jaer.eventprocessing.EventFilter2D
          extended by net.sf.jaer.eventprocessing.filter.BoredomFilter
All Implemented Interfaces:
java.util.Observer

public class BoredomFilter
extends EventFilter2D
implements java.util.Observer

An AE filter that filters out high firing-rate repetitive events. It does this by maintaining an internal map of boring cells (x,y,type). These are boring because they occur very often. This filter is superceded by RepetitiousFilter, which works much better for streetlamps, etc.

Author:
tobi
See Also:
RepetitiousFilter

Field Summary
 int forgetInterval
           
 int threshold
           
 
Fields inherited from class net.sf.jaer.eventprocessing.EventFilter2D
enclosedFilter, out
 
Fields inherited from class net.sf.jaer.eventprocessing.EventFilter
annotationEnabled, chip, enclosedFilterChain, filterEnabled, log, perf, propertyTooltipMap, support
 
Constructor Summary
BoredomFilter(AEChip chip)
           
BoredomFilter(AEChip chip, EventFilter2D in)
           
 
Method Summary
 EventPacket filterPacket(EventPacket in)
          filters in to out.
static java.lang.String getDescription()
           
 java.lang.Object getFilterState()
          should return the filter state in some useful form
 int getForgetInterval()
           
 int getThreshold()
           
 void initFilter()
          this should allocate and initialize memory: it may be called when the chip e.g.
 boolean isGeneratingFilter()
           
 void resetFilter()
          should reset the filter to initial state
 void setForgetInterval(int forgetInterval)
           
 void setThreshold(int threshold)
           
 void update(java.util.Observable o, java.lang.Object arg)
           
 
Methods inherited from class net.sf.jaer.eventprocessing.EventFilter2D
checkOutputPacketEventType, checkOutputPacketEventType, getEnclosedFilter, resetOut, setEnclosedFilter, setFilterEnabled
 
Methods inherited from class net.sf.jaer.eventprocessing.EventFilter
getChip, getEnclosedFilterChain, getEnclosingFilter, getPrefs, getPropertyChangeSupport, getPropertyTooltip, isAnnotationEnabled, isEnclosed, isFilterEnabled, prefsEnabledKey, setAnnotationEnabled, setChip, setEnclosed, setEnclosedFilter, setEnclosedFilterChain, setEnclosingFilter, setPreferredEnabledState, setPrefs, setPropertyTooltip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

threshold

public int threshold

forgetInterval

public int forgetInterval
Constructor Detail

BoredomFilter

public BoredomFilter(AEChip chip)

BoredomFilter

public BoredomFilter(AEChip chip,
                     EventFilter2D in)
Method Detail

getDescription

public static java.lang.String getDescription()

isGeneratingFilter

public boolean isGeneratingFilter()

getFilterState

public java.lang.Object getFilterState()
Description copied from class: EventFilter
should return the filter state in some useful form

Specified by:
getFilterState in class EventFilter

resetFilter

public void resetFilter()
Description copied from class: EventFilter
should reset the filter to initial state

Specified by:
resetFilter in class EventFilter

getForgetInterval

public int getForgetInterval()

setForgetInterval

public void setForgetInterval(int forgetInterval)

getThreshold

public int getThreshold()

setThreshold

public void setThreshold(int threshold)

initFilter

public void initFilter()
Description copied from class: EventFilter
this should allocate and initialize memory: it may be called when the chip e.g. size parameters are changed after creation of the filter

Specified by:
initFilter in class EventFilter

update

public void update(java.util.Observable o,
                   java.lang.Object arg)
Specified by:
update in interface java.util.Observer

filterPacket

public EventPacket filterPacket(EventPacket in)
filters in to out. if filtering is enabled, the number of out may be less than the number put in

Specified by:
filterPacket in class EventFilter2D
Parameters:
in - input events can be null or empty.
Returns:
the processed events, may be fewer in number. filtering may occur in place in the in packet.

jAER project on SourceForge