Copyright (c) 2013 IEEE. Personal use is permitted. For any other purposes, permission must be obtained from the IEEE by emailing pubs-permissions@ieee.org.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
3
any arbitrary directions and no road information is available
for the observer. The state of a target at the moment k,
x
k
= [x
k
, ˙x
k
, y
k
, ˙y
k
]
T
, contains the position information of
the target, (x
k
, y
k
), and its velocities, ( ˙x
k
, ˙y
k
), in the x and y
directions respectively. The state equation of the target in the
x-y plan is described by
x
k
=
1 δT 0 0
0 1 0 0
0 0 1 δT
0 0 0 1
x
k
−
1
+
δT
2
2
0
δT 0
0
δT
2
2
0 δT
κ
1,k
κ
2,k
(1)
where δT is the sensing period, and κ
1,k
and κ
2,k
are
independent zero-mean white Gaussian noises with standard
deviations σ
κ
1
and σ
κ
2
, respectively [11]. As many symbols
are used in this paper, Table I summarizes the important ones.
For the observer, the number of targets in the region varies
with time. Thus, the tracked targets at each scan can be cate-
gorized into two types: survival targets and new-born targets,
accordingly. The survival targets are those which appear in
previous scans while the new-born targets are those newly
detected in the region. We consider that at most one new-born
target can appear in a short δT . For the new-born targets, they
can appear spontaneously according to a Poisson point process
with intensity function γ
k
= 0.2N (·|¯x
0
, Q), which denotes a
normal distribution with mean ¯x
0
and covariance Q. For the
survival targets, the probability of target survival from time
k −1 to time k is e
k|k−1
. No target spawning is considered in
this paper [10]. The maximum number of the targets at each
sensing moment is denoted as P . The probability of detection
is denoted as p
D
.
At each sensing moment, the observer obtains observations,
˜
Z
k
, from the targets and clutters in the circular region with a
radius R. The target-oriented observation equation is given by
z
k
= H(x
k
) =
r
k
θ
k
(2)
where
r
k
=
1 0 0 0
0 0 1 0
x
k
+ ζ
r,k
(3)
θ
k
= arctan
0 0 1 0
x
k
1 0 0 0
x
k
+ ζ
θ,k
. (4)
The observations consist of both the target range r
k
and
bearing θ
k
. ζ
r,k
and ζ
θ,k
are independent zero-mean white
Gaussian noises with standard deviations σ
r
and σ
θ
.
Clutters are uniformly distributed in the observation region
and the number of clutter points per scan obeys a Poisson
distribution with an average rate of λ [9].
III. ALGORITHMIC DESIGN AND HARDWARE
IMPLEMENTATION
In this section, we first propose the POSE PHD filter
design which is suitable for hardware implementation in FPGA
platforms. We then analyze the observation selection process
and show that the observation selection error probability is
negligible in the POSE PHD filter. Furthermore, we address
the hardware implementation issues of the POSE PHD filter.
Finally, we propose a heuristic method to select the proper
particle number based on the “lost tracking ratio” parameter
and discuss the computational complexity problem.
A. POSE PHD Filter Overview
The processing flow of the POSE PHD filter contains six
steps, namely Initialization, Prediction, Observation Selection,
Update, Resampling, Target Estimation, as shown in Fig. 2.
In comparison with the traditional particle PHD filter, we
introduce a novel Observation Selection module to pre-process
the observations to meet the hardware design requirements. In
the processing flow, Initialization is executed at the beginning
to initiate the processing parameters, while the other five steps
are executed recursively each time new observations arrive at
time k = 1, 2, 3....
1) Initialization: At time k = 0, the posterior PHD of targets
is represented by a set of particles (samples) {x
(i)
0
, w
(i)
0
}
L
i=1
where x
(i)
0
denotes the i-th particle at time k = 0, and w
(i)
0
denotes the associated weight of the particle x
(i)
0
.
2) Prediction: The algorithm generates L particles
{
˜
x
(i)
k|k−1
}
L
i=1
from the proposal density q
k
(·|x
(i)
k−1
, Z
k
) for the
surviving targets, and generates J particles {
˜
x
(i)
k|k−1
}
L+J
i=L+1
from the proposal density p
k
(·|Z
k
) for the new-born targets.
The prediction weight of the i-th particle at time k is given
by
ˆw
(i)
k|k−1
=
ϕ
k|k−1
(
˜
x
(i)
k|k−1
,x
(i)
k−1
)
q
k
(
˜
x
(i)
k|k−1
|x
(i)
k−1
,z
k
)
w
(i)
k−1
i = 1, . . . , L
1
J
γ
k
(
˜
x
(i)
k|k−1
)
p
k
(
˜
x
(i)
k|k−1
|z
k
)
i = L + 1, . . . L + J
(5)
where ϕ
k|k−1
(x, ξ) = e
k|k−1
(ξ)f
k|k−1
(x|ξ). e
k|k−1
(ξ) is the
target survival probability given the previous state was ξ, and
f
k|k−1
(x|ξ) is the transition probability of the survival target
from previous state ξ to the sampled particle x.
3) Observation Selection: For the survival targets, it gener-
ates the Euclidean distance D
sur
and selects M
1
targets from
the observation set
˜
Z
k
with elements
˜
z
k
. For the new-born
targets, it generates the Euclidean distance D
new
and then
selects M
2
targets from
˜
Z
k
. The selected observation set is
denoted as Z
k
. We will address the details of this step later.
4) Update: Using the selected observations Z
k
at time k, it
updates the weights of particles
˜w
(i)
k
=
1 − p
D
+
z∈Z
k
ψ
k,z
(
˜
x
(i)
k|k−1
)
κ
k
(z) + C
k
(z)
ˆw
(i)
k|k−1
(6)
where
C
k
(z) =
L+J
i=1
ψ
k,z
(
˜
x
(i)
k|k−1
) ˆw
(i)
k|k−1
. (7)
with ψ
k,z
(x) = p
D
g
k
(z|x) and κ
k
(z) = λc
k
(z). g
k
(z|x)
denotes the likelihood of individual targets, and c
k
(z) is the
probability density of clutters.
5) Resampling: By computing the sum of all weights, i.e.,
˜
N
k|k
=
L+J
i=1
˜w
(i)
k
, it first estimates the number of targets