Title: TE
1Tracking Engine is just another fuselet.
Composer
S
S
TE
Application (GUI)
Fuselets
DAML
DAML (generated by Composer?) specifies the
domain on which the tracking engine will operate.
The domain includes (1) the observations of
interest (i.e., the fuselets to which the TE
should subscribe), (2) comparison/prediction
routines/services for those observations,and (3)
the actual tracking algorithm.
2Overall Architecture
3TE Architecture Four layers (two generic and two
domain-specific)
Subscription Request
Subscription Requests
TRAFEN Main engine subscription loop
Observations (DAML)
Tracks (DAML)
Observations
Tracks
Tracking algorithm(s) BMHT and ICMP
Domain- specific
Observation, Track, Hypothesis, HypothesisSet,
Liklihood, PredictedState
Generic Interfaces
Comparison and prediction routines (or services)
Domain- specific
4Comparison and Prediction Routines
- Likelihood lt- compareType (Track, Observation)
-
- Return the likelihood that a new incoming
Observation is part of an existing Track based on
the type of the observed object (i.e., how likely
is it for a truck to be mistaken for a van?) - 2. PredictedState lt- predictState (Track, Time)
- Predict the future state of an object that is
represented by a track - 3. Likelihood -gt compareState (PredictedState,
Observation) - Return the likelihood that a new incoming
Observation is part of an existing Track based on
the predicted and observed states (i.e., how
likely is it for a truck to change direction?)
it also might be worthwhile to introduce a
compareState routine that takes a Track as
parameter and invokes the predictState routine
internally. - 4. Likelihood -gt compareTypeAndState (Track,
PredictedState, Observation) - A simple combination of Routines 1 and 3 (some
tracking algorithms dont need them separated).
5Classes Most generic, some subclassed
Observation constructor will accept and parse a
DAML description of the observation.
- Observation subclassed
- GroundVehicleObservation
- ICMPObservation
-
- Track
- Hypothesis
- HypothesisSet
- Likelihood (for the prototype, just a
probability might need to be suclassed in later
versions) - PredictedState subclassed
- GroundVehiclePredState
- ICMPPredState
-
- TrackingAlgorithm subclassed
- Reids MHT
- ICMP
When the TE starts, it must use the DAML
description to dynamically find and load the
appropriate subclasses of Observation,
PredictedState and TrackingAlgorithm, and find
the necessary comparison and prediction routines
or services. References to these classes and
services will be stored in a separate class
(DomainHelper?) for use by the other modules.
The DomainHelper mappings can be updated on the
fly in response to user requests (e.g., use a
new, better prediction service).
6TASKS
- Trafen engine read and parse DAML, pub/sub
events, manages object-types being currently
handled (esp. dynamically finding prediction and
comparison routines) - Mature the IXO integration and implementation
(signal processing and DAML markup/documentation) - Prediction models state kinematics and
likelihood models (case a ICMP events case b
vehicle acoustic tracking) - Specific association/fusion logic for the two
different domains - Interface definitions (this is Task 1 and 4
coordination)
Teams 1 Jiang Han, Paul 2 Wayne Yong,
Diego a34 Bob Vince b34 Valentino Glenn,
Annarita (Diego) All coordinate on task 5 -
Bob, Vince lead