artificial learning approaches for multi-target tracking jesse mccrosky nikki hu
Post on 18-Dec-2015
215 views
TRANSCRIPT
Artificial Learning Artificial Learning Approaches for Multi-Approaches for Multi-
target Trackingtarget Tracking
Jesse McCroskyJesse McCrosky
Nikki HuNikki Hu
IntroductionIntroduction
Work for SPIE paper and for Work for SPIE paper and for Lockheed Martin:Lockheed Martin:
Racecar problemRacecar problem
Multiple independent targetsMultiple independent targets
Signal measure and PHD Signal measure and PHD methodsmethods
Rho optimizationRho optimization
OverviewOverview
• ModelModel– signal SDEsignal SDE– NoiseNoise
• FilteringFiltering– Signal measureSignal measure– PHDPHD
• Rho OptimizationRho Optimization
ModelModel
• High-speed, radio reflective Canada High-speed, radio reflective Canada GeeseGeese
• Observations are doppler shifted Observations are doppler shifted radio frequencies:radio frequencies:
DopplerDoppler
• Actually track radio signals but Actually track radio signals but determined by bird flightdetermined by bird flight
))(()(
)(
t
0j0
t
0j0
djvxS
djvxS
tc1
d vcff
Signal ModelSignal Model
• Model radio frequencies, not birdsModel radio frequencies, not birds• Domain is [0, 2pi) (one dimensional)Domain is [0, 2pi) (one dimensional)• Current SDE:Current SDE:
– Where DWhere Dt t is in {-1, 1} and changes as is in {-1, 1} and changes as poisson processpoisson process
– Wraps around domainWraps around domain
• But this is not a good modelBut this is not a good model• Doug Blount is working on better SDEDoug Blount is working on better SDE
ttt dvdtDSdX *
Observation ModelObservation Model
• Amplitude over discrete time and Amplitude over discrete time and frequencyfrequency
• Radio stations, doppler reflectionsRadio stations, doppler reflections
• Multiplicative lognormal noiseMultiplicative lognormal noise
ProblemsProblems
• Analysis of noise is limited by need to Analysis of noise is limited by need to “filter” out signal“filter” out signal– ThresholdingThresholding
• Noise appears to be correlated in Noise appears to be correlated in frequencyfrequency– Not in current modelNot in current model
• Signal has varying width, brightnessSignal has varying width, brightness– Not in current modelNot in current model
Signal measure filteringSignal measure filtering
• Using a version of SERP modified for Using a version of SERP modified for multiple independent targetsmultiple independent targets
• Three approachesThree approaches– Shared path filteringShared path filtering– Fully independent target filteringFully independent target filtering– Pseudo-model selection filteringPseudo-model selection filtering
Shared path filteringShared path filtering
• Each particle refers to some number Each particle refers to some number of paths from poolof paths from pool– Two particles may refer to same pathTwo particles may refer to same path
• Do independent evolve of paths, not Do independent evolve of paths, not particlesparticles
• Particle evolution is not truly Particle evolution is not truly independentindependent
Shared Path FilteringShared Path Filtering
• Upon resampling, one particle will Upon resampling, one particle will refer to the other particles pathsrefer to the other particles paths
• Previous paths may become orphanedPrevious paths may become orphaned– Filter can degenerate to very few active Filter can degenerate to very few active
pathspaths
• Solution is path splittingSolution is path splitting– Replace orphaned path with an Replace orphaned path with an
independent copy of a very active pathindependent copy of a very active path
Shared Path FilteringShared Path Filtering
• Advantage is fewer paths to store Advantage is fewer paths to store and evolveand evolve
• Disadvantage is overhead in path Disadvantage is overhead in path splittingsplitting
• Racecar paths are small and quick to Racecar paths are small and quick to evolve - disadvantages outweigh evolve - disadvantages outweigh advantagesadvantages
Fully independent target Fully independent target filteringfiltering
• Each particle has its own set of Each particle has its own set of pathspaths– Enough for maximum possible Enough for maximum possible
number of targets in signalnumber of targets in signal
• Has number indicating how many Has number indicating how many are activeare active
• Evolve each particle which Evolve each particle which evolves the appropriate pathsevolves the appropriate paths
• Resampling produces Resampling produces independent copies of paths and independent copies of paths and same number of active pathssame number of active paths
P art ic le
p a th
p a th
in ac t ive
2
Initial distributionInitial distribution
• Works better with non-uniform initial Works better with non-uniform initial distribution of number of targetsdistribution of number of targets– More targets = more particlesMore targets = more particles
• How many more?How many more?– Linear, exponential, etc?Linear, exponential, etc?
• Should weights be used to Should weights be used to compensate?compensate?
Pseudo-model selection Pseudo-model selection filteringfiltering
• Run instance of SERP for each Run instance of SERP for each possible number of targetspossible number of targets
• Resample between instances with Resample between instances with very high rho.very high rho.
• Not tried yet.Not tried yet.
ResultsResults
• Available hardware can only handle Available hardware can only handle ~100000 particles~100000 particles
• Can only reliably filter 2 targetsCan only reliably filter 2 targets
• Problem “looks” easyProblem “looks” easy
• Investigating possible error in Investigating possible error in resampling coderesampling code
SimulationSimulation
Speed issuesSpeed issues
• Two major issuesTwo major issues– MSE calculationMSE calculation– ReweightingReweighting
• Fixing these may allow more particles to be Fixing these may allow more particles to be used used
• Iteration profile:Iteration profile:resamplinresamplingg
reweightingreweighting evolutionevolution drawingdrawing totaltotal
210 ms210 ms 7750 ms7750 ms 100 ms100 ms 2030 ms2030 ms 10070 ms10070 ms
MSE CalculationMSE Calculation• Required for Rho OptimizationRequired for Rho Optimization• Unknown number of targets requires more complex error Unknown number of targets requires more complex error
calculationcalculation• Using equation from last year’s SPIE paper:Using equation from last year’s SPIE paper:
XY
YX
M
1j
2YX2jjM1perm
M
1j
2XY2jjM1perm
itt
N
1iN
1i
ik
ik
t
N
1j
jtt
MM
MM
DMMYX
DMMYX
YXd
XXdW
WXXerror
Y
X
X
Y
kkkkk
)()),((min
)()),((min
),(
),(),(
)(,...,
)(,...,
'
'
is a distance function on the target domainis a distance function on the target domain is the number of targets in X, a particle or signalis the number of targets in X, a particle or signalNote this requires estimated locations for each particle, not just Note this requires estimated locations for each particle, not just
distributiondistribution
),( yx
XM
MSE CalculationMSE Calculation
• Is there an alternate way?Is there an alternate way?– Consider only particles with correct Consider only particles with correct
number of targets?number of targets?
• Only needed to tell rho optimizer how Only needed to tell rho optimizer how well it is doingwell it is doing
Update functionUpdate function
• Update weighting function for multiplicative Update weighting function for multiplicative lognormal noise is fairly expensivelognormal noise is fairly expensive
• Is there a more efficient approximation that Is there a more efficient approximation that could be used?could be used?
cells
i
s
mymihiy
i
e1
2
)ln()ln(2
22
PHD FilterPHD Filter
ContentsContents
Brief introductionBrief introduction
Number of Targets EstimationNumber of Targets Estimation
State Estimation State Estimation
implementationimplementation
QuestionsQuestions
1.1.Brief IntroductionBrief Introduction
• A new method for tracking and identifying A new method for tracking and identifying multiple targets.multiple targets.
• Consider a single-sensor, single-target Consider a single-sensor, single-target problem, the recursive equations for the problem, the recursive equations for the posterior distribution can be written asposterior distribution can be written as
Where Where
The generalization of the above equation for The generalization of the above equation for thethe
multiple-sensor, multiple-target system can multiple-sensor, multiple-target system can bebe
reformulated as:reformulated as:
Where is a multi-target stateWhere is a multi-target state
is a multi-target posterior densityis a multi-target posterior density
is a multi-target likelihood functionis a multi-target likelihood function
The first-order moment can’t be The first-order moment can’t be
defined. In order to compute it, we have to use defined. In order to compute it, we have to use
some function h that maps the state-set X into a some function h that maps the state-set X into a
vector space.Then vector space.Then is computed is computed
indirectly asindirectly as
kX)|( )(
|k
kkk YXp
)|( XYp
• One of the possible choices for the function One of the possible choices for the function h ish is
This makes the first-order moment, This makes the first-order moment, denoted by denoted by
, is the , is the pprobability robability hhypothesis ypothesis ddensity(PHD) ensity(PHD)
• It has the property that is the It has the property that is the expected number of targets contained in expected number of targets contained in the region Sthe region S
• If the SNR and the SCR are high enough, If the SNR and the SCR are high enough, and the multi-target system has a zero and the multi-target system has a zero covariance, then the PHD is a good covariance, then the PHD is a good approximation for the unnormalized multi-approximation for the unnormalized multi-target posterior density, and an explicit target posterior density, and an explicit recursive equation can be derived forrecursive equation can be derived for
..
2.Number of Targets 2.Number of Targets EstimationEstimation
• In our current implementation, we In our current implementation, we consider that the number of targets is consider that the number of targets is constant and unknown. An explicit constant and unknown. An explicit recursive equation can be derived forrecursive equation can be derived for
as:as:
Where - average no. of false alarmsWhere - average no. of false alarms
- distribution of false alarms- distribution of false alarms
- prob. Of detection- prob. Of detection
3. State Estimation3. State Estimation• Using the results of the previous section, I.e.Using the results of the previous section, I.e. is given. Then, how can this information be used is given. Then, how can this information be used
to find the state of each target?to find the state of each target?
• The approach is based on the following idea. The approach is based on the following idea. Suppose that Suppose that
where is the unknown meanswhere is the unknown means is the covariance matrices, is the covariance matrices,
M is the expected number of targets, M is the expected number of targets, and and 1 st. and ,,
M
1i1 iiM
iiii
• The likelihood of the parameters given data The likelihood of the parameters given data is is
It is reasonable to expect that maximization It is reasonable to expect that maximization of the likelihood, using the set of particles of the likelihood, using the set of particles representing the PHD as the data , should representing the PHD as the data , should give the values of the parameters,give the values of the parameters,
which will provide a good approximation for which will provide a good approximation for
, Then the means, ,should be , Then the means, ,should be good estimators for the states of targets.good estimators for the states of targets.
)|(maxarg*
*i
4. Implement issues4. Implement issues
• Equations (1.1) and (1.2) contain an Equations (1.1) and (1.2) contain an integral, whose computation isn’t easy. To integral, whose computation isn’t easy. To deal with this problem, a sequential Monte deal with this problem, a sequential Monte Carlo method can be used. And this Carlo method can be used. And this method leads to the Interactive Particle method leads to the Interactive Particle Filter.Filter.
• At each time step k > 1At each time step k > 1
• Motion updateMotion update SettingSettingMoving each according to the motion of Moving each according to the motion of
the targets the targets
• Observation updateObservation update compute I(y)compute I(y)
the total mass isthe total mass is
kkk1k MM || i
kk|
• Computing weightsComputing weights
• Resampling the particlesResampling the particles
N
1ll
1k1k
j1k1kj
k1ki
1k1kP|
||| )(
5. Questions5. Questions
1.1. Is a copy of a RacecarTarget or Is a copy of a RacecarTarget or RacecarSignal?RacecarSignal?
2.2. Did I compute right?Did I compute right?
Rho OptimizationRho Optimization
• Develop a policy that maps states to Develop a policy that maps states to actionsactions– State is aggregate of variance of particle State is aggregate of variance of particle
system and distribution of particle weightssystem and distribution of particle weights– Actions are rho values to use for next Actions are rho values to use for next
iterationiteration
• Optimal policy will minimize some cost Optimal policy will minimize some cost functionfunction
Cost FunctionCost Function
• For a single iteration use cost function:For a single iteration use cost function:
Where a, b, and c are variance, MSE, Where a, b, and c are variance, MSE, and computation time and cand computation time and c11, c, c22, c, c3 3 are are constant weightsconstant weights
But rho value may have consequences But rho value may have consequences later onlater on
)()()()(1k1k1kk t3t2t1t FccFbcFacC
Time Horizon CostTime Horizon Cost
• To consider future costs use To consider future costs use discounted discounted
ConclusionConclusion
• Lots of progress made, lots to be Lots of progress made, lots to be done!done!