|
jAER project on SourceForge | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.jaer.eventprocessing.EventFilter
net.sf.jaer.eventprocessing.EventFilter2D
ch.unizh.ini.jaer.chip.retina.Tmpdiff128RateController
public class Tmpdiff128RateController
Controls the rate of events from the retina by controlling retina biases. The event threshold is increased if rate exceeds rateHigh until rate drops below rateHigh. The threshold is decreased if rate is lower than rateLow. Hysterisis limits crossing noise. A lowpass filter smooths the rate measurements.
Field Summary | |
---|---|
protected java.util.prefs.Preferences |
prefs
|
protected int |
rateHigh
|
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 | |
---|---|
Tmpdiff128RateController(AEChip chip)
Creates a new instance of Tmpdiff128RateController |
Method Summary | |
---|---|
void |
annotate(float[][][] frame)
annotate the RGB frame somehow by color pixels in the rendered pixel frame data. |
void |
annotate(javax.media.opengl.GLAutoDrawable drawable)
Each annotator enters annotate with graphics context current, in coordinates with pixel 0,0 in LL corner (note opposite from Java2D) and pixel spacing 1 unit after the scaling transform (which is already active). |
void |
annotate(java.awt.Graphics2D g)
each annotator is called by the relevant class (e.g. |
EventPacket |
filterPacket(EventPacket in)
Subclasses implement this method to define custom processing. |
java.lang.Object |
getFilterState()
should return the filter state in some useful form |
float |
getHysteresisFactor()
|
float |
getRateFilter3dBFreqHz()
|
int |
getRateHigh()
|
int |
getRateLow()
|
void |
initFilter()
this should allocate and initialize memory: it may be called when the chip e.g. |
boolean |
isWriteLogEnabled()
|
void |
resetFilter()
should reset the filter to initial state |
void |
setHysteresisFactor(float h)
|
void |
setRateFilter3dBFreqHz(float rateFilter3dBFreqHz)
|
void |
setRateHigh(int upperThreshKEPS)
|
void |
setRateLow(int lowerThreshKEPS)
|
void |
setWriteLogEnabled(boolean writeLogEnabled)
|
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, getDescription, 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 |
Methods inherited from interface net.sf.jaer.graphics.FrameAnnotater |
---|
isAnnotationEnabled, setAnnotationEnabled |
Field Detail |
---|
protected java.util.prefs.Preferences prefs
protected int rateHigh
Constructor Detail |
---|
public Tmpdiff128RateController(AEChip chip)
Method Detail |
---|
public java.lang.Object getFilterState()
EventFilter
getFilterState
in class EventFilter
public void resetFilter()
EventFilter
resetFilter
in class EventFilter
public int getRateHigh()
public void setRateHigh(int upperThreshKEPS)
public int getRateLow()
public void setRateLow(int lowerThreshKEPS)
public EventPacket filterPacket(EventPacket in)
EventFilter2D
filterPacket
in class EventFilter2D
in
- the input packet
public float getRateFilter3dBFreqHz()
public void setRateFilter3dBFreqHz(float rateFilter3dBFreqHz)
public void initFilter()
EventFilter
initFilter
in class EventFilter
public float getHysteresisFactor()
public void setHysteresisFactor(float h)
public void annotate(float[][][] frame)
FrameAnnotater
annotate
in interface FrameAnnotater
frame
- the RGB pixel information. First dimension is Y, second is X, third is RGBpublic void annotate(java.awt.Graphics2D g)
FrameAnnotater
annotate
in interface FrameAnnotater
g
- the Graphics2D contextpublic void annotate(javax.media.opengl.GLAutoDrawable drawable)
FrameAnnotater
GL gl = drawable.getGL(); gl.glBegin(GL.GL_LINES); gl.glColor3f(.5f, .5f, 0); gl.glVertex2f(0, 0); gl.glVertex2f(getSizeX() - 1, getSizeY() - 1); gl.glEnd();
annotate
in interface FrameAnnotater
drawable
- the OpenGL drawable components, e.g., GLCanvaspublic boolean isWriteLogEnabled()
public void setWriteLogEnabled(boolean writeLogEnabled)
|
jAER project on SourceForge | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |