|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.unihalle.informatik.MiToBo.tracking.multitarget.algo.MultiTargetIMMFilter
@ALDMetaInfo(export=ALLOWED) public class MultiTargetIMMFilter
Multi-target Interacting Multiple Models (IMM) filter for varying number of targets.
Field Summary | |
---|---|
protected double |
delta_t
|
protected AbstractMultiStateFactory<MotionModelID> |
factoryX
|
protected AbstractMultiStateFactory<MotionModelID> |
factoryZ
|
protected Jama.Matrix |
markov
Markov matrix probability of dynamic model switching: A matrix with size (#dynamicmodels x #dynamicmodels). |
protected AbstractMultiState<MotionModelID> |
meanX
|
protected GaussMixDistribution |
newbornStateDistrib
|
protected Jama.Matrix |
newbornStateFromObs
|
protected ExponentialDistribution |
pdeath
|
protected Vector<GaussMixDistribution> |
pobs
observation distribution: independent Gaussian mixtures for each target |
protected LinearTransformGaussNoise[] |
predictors
dynamic models |
protected LinearTransformGaussNoise |
projector
observation model |
protected Vector<GaussMixDistribution> |
pstate
state distribution: independent Gaussian mixtures for each target |
protected Random |
rand
|
protected HashMap<Short,Integer> |
targetIDtoIdx
|
Constructor Summary | |
---|---|
MultiTargetIMMFilter(MultiTargetIMMFilter imm)
Copy constructor. |
|
MultiTargetIMMFilter(Vector<GaussMixDistribution> initialStateDistrib,
LinearTransformGaussNoise observationModel,
LinearTransformGaussNoise[] dynamicsModels,
Jama.Matrix markov,
double delta_t,
ExponentialDistribution targetDeathDistrib,
GaussMixDistribution newbornStateDistrib,
Jama.Matrix stateFromObs,
AbstractMultiStateFactory<MotionModelID> factoryX,
AbstractMultiStateFactory<MotionModelID> factoryZ)
Constructor that initializes the internal random generator with seed 1. |
|
MultiTargetIMMFilter(Vector<GaussMixDistribution> initialStateDistrib,
LinearTransformGaussNoise observationModel,
LinearTransformGaussNoise[] dynamicsModels,
Jama.Matrix markov,
double delta_t,
ExponentialDistribution targetDeathDistrib,
GaussMixDistribution newbornStateDistrib,
Jama.Matrix stateFromObs,
AbstractMultiStateFactory<MotionModelID> factoryX,
AbstractMultiStateFactory<MotionModelID> factoryZ,
Random rand)
Constructor. |
Method Summary | |
---|---|
MultiTargetPredictionFilterIndep<MotionModelID> |
copy()
|
Set<Short> |
getExistingTargetIDs()
|
AbstractMultiState<MotionModelID> |
getMean()
|
AbstractMultiObservationDistributionIndep<MotionModelID,MotionModelID> |
getObservationDistribution()
|
protected void |
letTargetsDie()
Let targets die randomly using the specified distribution of target death and the internal random generator. |
void |
predict()
Prediction step method |
void |
update(AbstractMultiState<MotionModelID> observation,
DataAssociation association)
Update step method given a multi-target observation |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected Vector<GaussMixDistribution> pstate
protected Vector<GaussMixDistribution> pobs
protected AbstractMultiState<MotionModelID> meanX
protected LinearTransformGaussNoise[] predictors
protected LinearTransformGaussNoise projector
protected Random rand
protected Jama.Matrix markov
protected AbstractMultiStateFactory<MotionModelID> factoryX
protected AbstractMultiStateFactory<MotionModelID> factoryZ
protected double delta_t
protected ExponentialDistribution pdeath
protected HashMap<Short,Integer> targetIDtoIdx
protected GaussMixDistribution newbornStateDistrib
protected Jama.Matrix newbornStateFromObs
Constructor Detail |
---|
public MultiTargetIMMFilter(MultiTargetIMMFilter imm)
public MultiTargetIMMFilter(Vector<GaussMixDistribution> initialStateDistrib, LinearTransformGaussNoise observationModel, LinearTransformGaussNoise[] dynamicsModels, Jama.Matrix markov, double delta_t, ExponentialDistribution targetDeathDistrib, GaussMixDistribution newbornStateDistrib, Jama.Matrix stateFromObs, AbstractMultiStateFactory<MotionModelID> factoryX, AbstractMultiStateFactory<MotionModelID> factoryZ)
initialStateDistrib
- distributions of the different independent targets' statesobservationModel
- observation modeldynamicsModels
- multiple dynamic modelsmarkov
- model transition matrix: each column holds the probabilities to switch from the dynamic model of column-index to the corresponding model of row-indexdelta_t
- time steptargetDeathDistrib
- distribution of the death/survival of targets depending on last time of associationnewbornStateDistrib
- distribution of newborn targetsstateFromObs
- a matrix to transform an observation (vector) to a state vectorfactoryX
- multi-state factoryfactoryZ
- multi-observation factorypublic MultiTargetIMMFilter(Vector<GaussMixDistribution> initialStateDistrib, LinearTransformGaussNoise observationModel, LinearTransformGaussNoise[] dynamicsModels, Jama.Matrix markov, double delta_t, ExponentialDistribution targetDeathDistrib, GaussMixDistribution newbornStateDistrib, Jama.Matrix stateFromObs, AbstractMultiStateFactory<MotionModelID> factoryX, AbstractMultiStateFactory<MotionModelID> factoryZ, Random rand)
initialStateDistrib
- distributions of the different independent targets' statesobservationModel
- observation modeldynamicsModels
- multiple dynamic modelsmarkov
- model transition matrix: each column holds the probabilities to switch from the dynamic model of column-index to the corresponding model of row-indexdelta_t
- time steptargetDeathDistrib
- distribution of the death/survival of targets depending on last time of associationnewbornStateDistrib
- distribution of newborn targetsstateFromObs
- a matrix to transform an observation (vector) to a state vectorfactoryX
- multi-state factoryfactoryZ
- multi-observation factoryrand
- random generatorMethod Detail |
---|
public void predict()
MultiTargetPredictionFilter
predict
in interface MultiTargetPredictionFilter<AbstractMultiState<MotionModelID>>
public void update(AbstractMultiState<MotionModelID> observation, DataAssociation association)
MultiTargetPredictionFilter
update
in interface MultiTargetPredictionFilter<AbstractMultiState<MotionModelID>>
public AbstractMultiState<MotionModelID> getMean()
getMean
in interface FirstOrderMoment<AbstractMultiState<MotionModelID>>
public MultiTargetPredictionFilterIndep<MotionModelID> copy()
copy
in interface MultiTargetPredictionFilterIndep<MotionModelID>
copy
in interface Copyable<MultiTargetPredictionFilter<AbstractMultiState<MotionModelID>>>
public AbstractMultiObservationDistributionIndep<MotionModelID,MotionModelID> getObservationDistribution()
getObservationDistribution
in interface MultiTargetPredictionFilterIndep<MotionModelID>
protected void letTargetsDie()
public Set<Short> getExistingTargetIDs()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |