S
- Type of discrete variables in the multi target observationT
- Type of discrete variables in the multi target statepublic class AssociationDistribution<S extends TargetID,T extends TargetID> extends AbstractAssociationDistribution<S,T> implements EvaluatableDistribution<DataAssociation>, LogEvaluatableDistribution<DataAssociation>
P_D
,
a number of observations of newborn targets distributed according to a distribution nu
and a number of clutter observations distributed according to a distribution mu
.
Modifier and Type | Field and Description |
---|---|
protected double[][] |
chi |
protected int |
lastM
Number of observations in last call of drawSample()
|
protected int |
lastN
Number of targets in last call of drawSample()
|
protected DataAssociation |
lastSample
Last sample that was sampled
|
protected double[] |
logBinom
Binomial distribution of number of observations associated to existing targets
|
protected double[] |
logMuValues
(log) values of mu to avoid recomputation
|
protected double[] |
logNuValues
(log) values of nu to avoid recomputation
|
protected double |
logP_C
(log) probability of the current set of association variables given observations and previous associations
|
protected double |
logP_MN
(log) propability of M observations given N existing targets and the current model configuration
|
protected int |
M_max
Maximum number of observations in the time series
|
protected int |
minMN
Minimum of number of observations and number of targets
|
protected LogProbabilityMassFunction |
mu
Distribution of the number of clutter observations
|
protected int |
newtargetID
Target-ID to start from for newborn targets
|
protected LogProbabilityMassFunction |
nu
Distribution of the number of observations from newborn targets
|
protected double |
P_D
Probability of target detection
|
protected double[] |
phi_0 |
protected double[] |
phi_1 |
protected double[] |
psi |
assocfactory, clutterdistrib, log_pzc, M, N, newborndistrib, obsdistrib, rand, Z
Constructor and Description |
---|
AssociationDistribution(Random rand,
AbstractMultiState<S> Z,
AbstractMultiObservationDistributionIndep<S,T> observationDistrib,
LogProbabilityDensityFunction spatialClutterDistrib,
LogProbabilityDensityFunction spatialNewbornDistrib,
LogProbabilityMassFunction mu,
LogProbabilityMassFunction nu,
double P_D)
Constructor.
|
AssociationDistribution(Random rand,
AbstractMultiState<S> Z,
AbstractMultiObservationDistributionIndep<S,T> observationDistrib,
LogProbabilityDensityFunction spatialClutterDistrib,
LogProbabilityDensityFunction spatialNewbornDistrib,
LogProbabilityMassFunction mu,
LogProbabilityMassFunction nu,
double P_D,
int M_max)
Constructor where the maximum number of observations in the time series is specified to avoid some
re-computations.
|
Modifier and Type | Method and Description |
---|---|
DataAssociation |
drawSample()
Generate a new sample from this density.
|
DataAssociation |
drawSampleDebug(DataAssociation groundtruth,
OutputStream ostream) |
void |
letNewbornTargetIDsStartFrom(int minNewTargetID)
Specify the starting target-ID for newborn targets
|
double |
log_p(DataAssociation x)
This method is here only valid for the latest DataAssociation sampled with
drawSample() . |
double |
p(DataAssociation x)
This method is here only valid for the latest DataAssociation sampled with
drawSample() . |
protected void |
reset() |
void |
setNewObservations(AbstractMultiState<S> Z,
AbstractMultiObservationDistributionIndep<S,T> observationDistrib) |
protected LogProbabilityMassFunction mu
protected double[] logMuValues
protected LogProbabilityMassFunction nu
protected double[] logNuValues
protected double[] logBinom
protected int lastM
protected int lastN
protected double[] psi
protected double[] phi_0
protected double[] phi_1
protected double[][] chi
protected int minMN
protected double P_D
protected double logP_MN
protected DataAssociation lastSample
protected double logP_C
protected int M_max
protected int newtargetID
public AssociationDistribution(Random rand, AbstractMultiState<S> Z, AbstractMultiObservationDistributionIndep<S,T> observationDistrib, LogProbabilityDensityFunction spatialClutterDistrib, LogProbabilityDensityFunction spatialNewbornDistrib, LogProbabilityMassFunction mu, LogProbabilityMassFunction nu, double P_D)
rand
- random generator for samplingZ
- the current observationsobservationDistrib
- distribution of the observations modelspatialClutterDistrib
- spatial distribution of possible clutter appearancespatialNewbornDistrib
- spatial distribution of possible newborn appearancemu
- distribution of the number of clutter observationsnu
- distribution of the number of observations from newborn targetsP_D
- probability of target detectionpublic AssociationDistribution(Random rand, AbstractMultiState<S> Z, AbstractMultiObservationDistributionIndep<S,T> observationDistrib, LogProbabilityDensityFunction spatialClutterDistrib, LogProbabilityDensityFunction spatialNewbornDistrib, LogProbabilityMassFunction mu, LogProbabilityMassFunction nu, double P_D, int M_max)
rand
- random generator for samplingZ
- the current observationsobservationDistrib
- distribution of the observations modelspatialClutterDistrib
- spatial distribution of possible clutter appearancespatialNewbornDistrib
- spatial distribution of possible newborn appearancemu
- distribution of the number of clutter observationsnu
- distribution of the number of observations from newborn targetsP_D
- probability of target detectionM_max
- maximum number of observations in the time seriespublic void letNewbornTargetIDsStartFrom(int minNewTargetID)
public DataAssociation drawSample()
SamplingDistribution
drawSample
in interface SamplingDistribution<DataAssociation>
drawSample
in class AbstractAssociationDistribution<S extends TargetID,T extends TargetID>
public DataAssociation drawSampleDebug(DataAssociation groundtruth, OutputStream ostream)
drawSampleDebug
in class AbstractAssociationDistribution<S extends TargetID,T extends TargetID>
public double p(DataAssociation x)
drawSample()
.
If no DataAssociation was sampled before or the given DataAssociation x is a different object than
the latest sampled DataAssociation or a new observation was set, this method return -1 !!p
in interface EvaluatableDistribution<DataAssociation>
x
- realization of random variable Xpublic double log_p(DataAssociation x)
drawSample()
.
If no DataAssociation was sampled before or the given DataAssociation x is a different object than
the latest sampled DataAssociation or a new observation was set, this method returns Double.NaN !!log_p
in interface LogEvaluatableDistribution<DataAssociation>
x
- realization of random variable Xpublic void setNewObservations(AbstractMultiState<S> Z, AbstractMultiObservationDistributionIndep<S,T> observationDistrib)
setNewObservations
in class AbstractAssociationDistribution<S extends TargetID,T extends TargetID>
protected void reset()
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.