jAER project on SourceForge

net.sf.jaer.stereopsis
Class StereoClusterTracker.StereoCluster

java.lang.Object
  extended by net.sf.jaer.eventprocessing.tracking.RectangularClusterTracker.Cluster
      extended by net.sf.jaer.stereopsis.StereoClusterTracker.StereoCluster
Enclosing class:
StereoClusterTracker

public class StereoClusterTracker.StereoCluster
extends RectangularClusterTracker.Cluster

Extends the 2-d cluster to include 2.5-d disparity information. Adding an event updates the cluster's disparity value. The events added from left and right eye can have different x,y locations depending on misalignment and disparity. The cluster, however, has a single location in x,y,disparity space. When an event is added, the cluster disparity value is taken account of for determining the distance of the event to the cluster.


Nested Class Summary
 class StereoClusterTracker.StereoCluster.Point3d
          x,y,z triplet for representing 3d spatial location of cluster.
 
Nested classes/interfaces inherited from class net.sf.jaer.eventprocessing.tracking.RectangularClusterTracker.Cluster
RectangularClusterTracker.Cluster.PathPoint
 
Field Summary
 StereoClusterTracker.StereoCluster.Point3d location3dm
          location of cluster in 3d space as computed from pixel location and disparity, given chip's StereoGeometry.
 StereoClusterTracker.StereoCluster.Point3d velocity3dmps
          velocity of cluster in 3d space as computed from pixel location and disparity, given chip's StereoGeometry.
 
Fields inherited from class net.sf.jaer.eventprocessing.tracking.RectangularClusterTracker.Cluster
color, distanceToLastEvent, firstTimestamp, instantaneousEventRate, instantaneousISI, lastTimestamp, location, numEvents, path, previousNumEvents, velocity
 
Constructor Summary
StereoClusterTracker.StereoCluster()
           
StereoClusterTracker.StereoCluster(BasicEvent ev)
          Constructs a new cluster centered on an event
StereoClusterTracker.StereoCluster(StereoClusterTracker.StereoCluster one, StereoClusterTracker.StereoCluster two)
          Constructs a cluster by merging two clusters
 
Method Summary
 void addEvent(BasicEvent event)
          adds one BasicEvent event to this cluster, updating its parameters in the process
 void addEvent(BinocularEvent event)
          adds one BinocularEvent to this cluster, updating its parameters in the process
 float distanceTo(BasicEvent event)
          Computes ditance of cluster to event
protected  float distanceTo(StereoClusterTracker.StereoCluster c)
          Computes distance to another cluster
 float getDisparity()
           
 float getDisparityVelocity()
           
 StereoClusterTracker.StereoCluster.Point3d getLocation3dm()
           
 StereoClusterTracker.StereoCluster.Point3d getVelocity3dmps()
           
 void setDisparity(float disparity)
           
 void setDisparityVelocity(float disparityVelocity)
           
 void setLocation3dm(StereoClusterTracker.StereoCluster.Point3d location3dm)
           
 void setVelocity3dmps(StereoClusterTracker.StereoCluster.Point3d velocity3dmps)
           
 java.lang.String toString()
           
 
Methods inherited from class net.sf.jaer.eventprocessing.tracking.RectangularClusterTracker.Cluster
distanceMetric, distanceTo, getAngle, getAspectRatio, getAverageEventDistance, getAvgEventRate, getAvgISI, getBirthLocation, getClusterNumber, getColor, getDistanceFromBirth, getDistanceXFromBirth, getDistanceYFromBirth, getLastEventTimestamp, getLifetime, getLocation, getMeasuredSizeCorrectedByPerspective, getPath, getRadius, getRadiusCorrectedForPerspective, getVelocityPPS, isVelocityValid, isVisible, setAngle, setAspectRatio, setAverageEventDistance, setAvgEventRate, setAvgISI, setBirthLocation, setClusterNumber, setColor, setColorAccordingToAge, setColorAccordingToClass, setColorAccordingToSize, setColorAutomatically, setLocation, setRadius, setVelocityValid, updatePath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

location3dm

public StereoClusterTracker.StereoCluster.Point3d location3dm
location of cluster in 3d space as computed from pixel location and disparity, given chip's StereoGeometry. Coordinate frame is centered on bridge of viewers nose and z increases with distance. Units are meters. x increses from 0 rightwards from midline in image coordinates (larger to right in image) and y increases upwards in the same way


velocity3dmps

public StereoClusterTracker.StereoCluster.Point3d velocity3dmps
velocity of cluster in 3d space as computed from pixel location and disparity, given chip's StereoGeometry. Coordinate frame is centered on bridge of viewers nose and z increases with distance. Units are meters per second. x increses from 0 rightwards from midline in image coordinates (larger to right in image) and y increases upwards in the same way

Constructor Detail

StereoClusterTracker.StereoCluster

public StereoClusterTracker.StereoCluster()

StereoClusterTracker.StereoCluster

public StereoClusterTracker.StereoCluster(BasicEvent ev)
Constructs a new cluster centered on an event

Parameters:
ev - the event

StereoClusterTracker.StereoCluster

public StereoClusterTracker.StereoCluster(StereoClusterTracker.StereoCluster one,
                                          StereoClusterTracker.StereoCluster two)
Constructs a cluster by merging two clusters

Method Detail

addEvent

public void addEvent(BasicEvent event)
adds one BasicEvent event to this cluster, updating its parameters in the process

Overrides:
addEvent in class RectangularClusterTracker.Cluster
Parameters:
event - the event to add

addEvent

public void addEvent(BinocularEvent event)
adds one BinocularEvent to this cluster, updating its parameters in the process

Parameters:
event - the event to add

distanceTo

public float distanceTo(BasicEvent event)
Computes ditance of cluster to event

Parameters:
event - the event
Returns:
distance of this cluster to the event in manhatten (cheap) metric (sum of abs values of x and y distance

distanceTo

protected final float distanceTo(StereoClusterTracker.StereoCluster c)
Computes distance to another cluster

Parameters:
c - the other StereoCluster
Returns:
distance of this cluster to the other cluster in pixels

toString

public java.lang.String toString()
Overrides:
toString in class RectangularClusterTracker.Cluster

getDisparityVelocity

public float getDisparityVelocity()

setDisparityVelocity

public void setDisparityVelocity(float disparityVelocity)

getLocation3dm

public StereoClusterTracker.StereoCluster.Point3d getLocation3dm()
See Also:
location3dm

setLocation3dm

public void setLocation3dm(StereoClusterTracker.StereoCluster.Point3d location3dm)
See Also:
location3dm

getVelocity3dmps

public StereoClusterTracker.StereoCluster.Point3d getVelocity3dmps()
See Also:
velocity3dmps

setVelocity3dmps

public void setVelocity3dmps(StereoClusterTracker.StereoCluster.Point3d velocity3dmps)
See Also:
velocity3dmps

getDisparity

public float getDisparity()

setDisparity

public void setDisparity(float disparity)

jAER project on SourceForge