a multi target bearing tracking system using random sampling …vc3/tracking_using_ransac.pdf ·...

15
A Multi Target Bearing Tracking System using Random Sampling Consensus Volkan Cevher 1 , Faisal Shah 2 , Rajbabu Velmurugan 2 , and James H. McClellan 2 1 Center for Automation Research University of Maryland, College Park, MD 20742 2 School of Electrical and Computer Engineering Georgia Institute of Technology 777 Atlantic Drive Atlanta, GA 30332-0250, USA {volkan}@cfar.umd.edu, {faisal.shah, rajbabu, jim.mcclellan}@ece.gatech.edu Abstract— In this paper, we present an acoustic direction-of- arrival (DOA) tracking system to track multiple maneuvering targets using a state space approach. The system consists of three blocks: beamformer, random sampling, and particle fil- ter. The beamformer block processes the received acoustic data to output bearing batches as point statistics. The ran- dom sampling block determines temporal clustering of the bearings in a batch to determine region-of-interests (ROIs). Based on the track-before-detect approach, each ROI indi- cates the presence of a possible target. We describe three random sampling algorithms called RANSAC, MSAC, and NAPSAC to use in the random sampling block. The parti- cle filter then tracks the targets via its interactions with the beamformer and the random sampling blocks. We present a computational analysis of the random sampling blocks and show tracking results with field data. TABLE OF CONTENTS 1 I NTRODUCTION ............................... 1 2 TRACKER DESIGN ............................. 2 3 BEAMFORMER BLOCK ........................ 4 4 RANDOM SAMPLING FOR REGION- OF-I NTEREST PROCESSING ...................................... 4 5 PARTICLE FILTER ............................. 7 6 SIMULATIONS ................................. 9 7 CONCLUSIONS ................................ 12 8 ACKNOWLEDGEMENTS ........................ 12 1. I NTRODUCTION In this paper, we discuss automated tracking of the direction- of-arrival (DOA) angles of multiple targets using an acoustic array in the presence of noise or interferers [1–6]. We present three random sampling algorithms to temporally cluster bear- Prepared through collaborative participation in the Advanced Sensors Con- sortium sponsored by the U. S. Army Research Laboratory under the Collab- orative Technology Alliance Program, Cooperative Agreement DAAD19-01- 02-0008. 0-7803-9546-8/06/$20.00/ c 2006 IEEE IEEE AC paper # 1179 ing observations to form region-of-interests (ROI) to be used by a particle filter tracker. The ROI processing is becoming a popular method for trackers based on the track-before-detect concept [7–10]. The ROI processing idea relies on the observation that tem- porally consistent data, e.g., bearings, indicate the presence of actual targets, when we assume that the clutter observa- tions are uniformly distributed in the state space. Hence, during tracking, each new ROI in the observed data can be used to address a fundamental issue for target tracking al- gorithms in a statistical framework: initialization. Unfortu- nately, forming ROIs is a set covering problem, which is NP- complete [11–13]. Hence, we present three robust and efficient random sam- pling algorithms for ROI processing: RANSAC for random sampling consensus, MSAC for m-estimator sampling con- sensus, and NAPSAC for N-adjacent points sample consen- sus. These algorithms are commonly applied to motion seg- mentation problems in computer vision [14–22]. We show the application of these algorithms to our multi target bearing tracking problem. In addition, we discuss their computation complexity and analyze their statistical behavior. We also present a particle filter algorithmto track the DOA’s of multiple targets, using an acoustic node that contains an array of microphones with known positions. Each particle in the filter is created by concatenating the state vector for each target, called a partition. For example, the partition of the kth target has a state that consists of the DOA θ k (t) and the DOA rate ˙ θ k (t) of the kth target. The total number of tar- gets (or partitions) K is determined by a random sampling block based on the ROI processing. Hence, given K targets, a particle has K partitions where each target, and hence each partition, is assumed to be independent. Target motions are modeled as locally linear within an estimation period of du- ration T . In a particle filter, where the observations arrive in sequence, the state probability density function is represented by dis- 1

Upload: others

Post on 07-May-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

A Multi Target Bearing Tracking System using Random SamplingConsensus

Volkan Cevher1, Faisal Shah2, Rajbabu Velmurugan2, and James H. McClellan21Center for Automation Research

University of Maryland,College Park, MD 20742

2School of Electrical and Computer EngineeringGeorgia Institute of Technology

777 Atlantic DriveAtlanta, GA 30332-0250, USA

[email protected],faisal.shah, rajbabu, [email protected]

Abstract—In this paper, we present an acoustic direction-of-arrival (DOA) tracking system to track multiple maneuveringtargets using a state space approach. The system consists ofthree blocks: beamformer, random sampling, and particle fil-ter. The beamformer block processes the received acousticdata to output bearing batches as point statistics. The ran-dom sampling block determines temporal clustering of thebearings in a batch to determine region-of-interests (ROIs).Based on thetrack-before-detectapproach, each ROI indi-cates the presence of a possible target. We describe threerandom sampling algorithms called RANSAC, MSAC, andNAPSAC to use in the random sampling block. The parti-cle filter then tracks the targets via its interactions with thebeamformer and the random sampling blocks. We present acomputational analysis of the random sampling blocks andshow tracking results with field data.

TABLE OF CONTENTS

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 TRACKER DESIGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 BEAMFORMER BLOCK . . . . . . . . . . . . . . . . . . . . . . . . 44 RANDOM SAMPLING FOR REGION-OF-INTEREST

PROCESSING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 PARTICLE FILTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 SIMULATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 CONCLUSIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 ACKNOWLEDGEMENTS . . . . . . . . . . . . . . . . . . . . . . . . 12

1. INTRODUCTION

In this paper, we discuss automated tracking of the direction-of-arrival (DOA) angles of multiple targets using an acousticarray in the presence of noise or interferers [1–6]. We presentthree random sampling algorithms to temporally cluster bear-

Prepared through collaborative participation in the Advanced Sensors Con-sortium sponsored by the U. S. Army Research Laboratory under the Collab-orative Technology Alliance Program, Cooperative Agreement DAAD19-01-02-0008.

0-7803-9546-8/06/$20.00/c©2006 IEEE

IEEE AC paper # 1179

ing observations to form region-of-interests (ROI) to be usedby a particle filter tracker. The ROI processing is becoming apopular method for trackers based on thetrack-before-detectconcept [7–10].

The ROI processing idea relies on the observation that tem-porally consistent data, e.g., bearings, indicate the presenceof actual targets, when we assume that the clutter observa-tions are uniformly distributed in the state space. Hence,during tracking, each new ROI in the observed data can beused to address a fundamental issue for target tracking al-gorithms in a statistical framework: initialization. Unfortu-nately, forming ROIs is a set covering problem, which is NP-complete [11–13].

Hence, we present three robust and efficient random sam-pling algorithms for ROI processing: RANSAC for randomsampling consensus, MSAC for m-estimator sampling con-sensus, and NAPSAC for N-adjacent points sample consen-sus. These algorithms are commonly applied to motion seg-mentation problems in computer vision [14–22]. We showthe application of these algorithms to our multi target bearingtracking problem. In addition, we discuss their computationcomplexity and analyze their statistical behavior.

We also present a particle filter algorithm to track the DOA’sof multiple targets, using an acoustic node that contains anarray of microphones with known positions. Each particle inthe filter is created by concatenating the state vector for eachtarget, called a partition. For example, the partition of thekth target has a state that consists of the DOAθk(t) and theDOA rate θk(t) of the kth target. The total number of tar-gets (or partitions)K is determined by a random samplingblock based on the ROI processing. Hence, givenK targets,a particle hasK partitions where each target, and hence eachpartition, is assumed to be independent. Target motions aremodeled as locally linear within an estimation period of du-rationT .

In a particle filter, where the observations arrive in sequence,the state probability density function is represented by dis-

1

Page 2: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

crete state samples (particles) distributed according to the un-derlying distribution (as explained by the state space) eitherdirectly or by proper weighting [23,24]. Hence, the filter canapproximate any statistics of the distribution arbitrarily ac-curately by increasing the number of particles with provenconvergence results. In the particle filtering framework, thedata association problem is undertaken implicitly by the statespace model interaction. However, the particle filter suffersfrom the curse of dimensionality problem, as the number oftargets increases [25]. To improve the efficiency of the algo-rithm, various methods are proposed, such as the partitioningapproach [2,26], or other Bayesian approaches [27].

Our particle filter uses multiple DOA’s to determine the statevector, based on an image template matching idea. We denotethe DOA collection as a batch. In our problem, a DOA imageis first formed when a batch of DOA observations are receivedfrom a beamformer that processes the received acoustic dataatτ second intervals. Then, image templates for target tracksare created using the state update function and the target parti-tion state vectors. By determining the best matching template(e.g., probable target track), the target state-vectors are esti-mated. Because the observations are treated as an image, thedata association and DOA ordering problems are naturally al-leviated. Moreover, by assuming that the DOA observationsare approximately normally distributed around the true targetDOA tracks, with constant DOA miss-probability and clutterdensity, a robust particle filter tracker is formulated.

The paper is organized as follows. Section 2 explains the me-chanics of the automated tracking system for multiple targetDOA tracking. Sections 3, 4, and 5 elaborate on the individ-ual elements of the tracking system. Computer simulationsare shown in Sect. 6 to demonstrate the performance of thealgorithms.

2. TRACKER DESIGN

We construct the tracking system mechanics (i) to compen-sate DOA estimation biases due to rapid target motion [3],(ii) to result in higher resolution DOA estimates than justbeamforming [2–4], (iii) to be robust against changes in tar-get signal characteristics, and (iv) to automatically determinethe number of targets. The tracker system consists of threeblocks as illustrated in Fig. 1. Details of the individual blocksare given in the following sections. Below, we discuss theelements of this design.

We note that the main objective of our tracker is to reportmultiple target DOA’s at some periodT , after observing theacoustic data at the node microphones. Quite often, targetDOA’s can change more than a few degrees during an esti-mation period, e.g., due to rapid target motion. Hence, if wewere to just use conventional snapshot DOA estimation meth-ods (e.g., MUSIC, MVDR, etc.) for tracking the targets, thebearing estimates become biased, because the received dataisnot stationary [28]. This is intuitive, because these methodsestimate an average of the target angular spread during their

θ1

θ1θ2

θ2 θs

Beamformer Block

Particle Filter Block

yt,f = yt+mτ,f (pm,f )M−1m=0

[

θ1(t)

θ1(t)

] [

θKt(t)

θKt(t)

]

. . .

Random Sampling Block

ROIs

Figure 1. Tracker mechanics is demonstrated using threebasic blocks. The beamformer block monitors the receivedacoustic signals to adapt to their frequency characteristics forbetter bearing estimation. It calculates a batch of DOA’s thatform point statistics for the random sampling and particle fil-ter blocks. The random sampling block searches for temporalclusters in the bearing batch to determine region-of-interests(ROIs). Consistent ROIs are declared as targets by the parti-cle filter block. The particle filter estimates the tracking pos-terior and can make various inferences (i.e., mean and modeestimates).

estimation periods [3].

In general, locally linear motion models eliminate this biasby simultaneously estimating the bearing with the target mo-tion parameters for the estimation period ofT . Conceptually,this is equivalent to aligning the received acoustic data withthe motion parameters so that the data becomes stationary forbearing estimation purposes. But, this alignment process re-lies heavily on the observation model and is computationallycostly because the high volume of the acoustic data used forestimation. In this paper, we propose to use a beamformerblock in our system to buffer the variability in the observedacoustic signals to create a compressed and invariant pointstatistics for our tracker block [5,29].

Therefore, the beamformer block (Fig. 1) processes theacoustic data, sampled atFs, at smaller intervals ofτ = T/M(e.g.,M = 10), where the targets are assumed to be relativelystationary (Fig. 2). The parameterM is called the batch size.This reduces the number of acoustic data samples availablefor processing, resulting in a sequence of noisier DOA esti-mates. However, these noisier DOA estimates are smoothedin the particle filter block, because a motion structure is im-posed on the batch of DOA’s.

We use the target bearingθ and the bearing rateθ in our statevector to model thekth target (k = 1, . . . ,Kt, whereKt is

2

Page 3: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

the number of targets at timet) motion to illustrate the ideasin this paper:

xk(t) =

[

θk(t)

θk(t)

]

, (1)

where the DOA’s are measured counterclockwise with respectto thex-axis. The state vector for the particle filter is a con-catenation of these targetpartitions:

xt =[

xT1 (t) xT

2 (t) . . . xTKt

(t)]T. (2)

The state update function is locally constant velocity modelfor each target on its bearing:

xk(t+ T ) = hT (xk(t)) + uk(t), (3)

whereuk(t) ∼ N (0,Σu) with Σu = diagσ2θ,k, σ

2

θ,k and

hT (xk(t)) =

[

θk(t) + θk(t)T

θk(t)

]

. (4)

In [4, 5], we discuss other state models to characterize mo-tion. For our state vector, a batch of DOA’s whenM ≥ 2 issufficient for the state-observability [3,30]. Since the filter isbuilt on the compressed statistics which is also sufficient forthe state vector, it achieves a significant reduction in compu-tational requirements.

0 T 2T 3TMτ

Time

DOA Missing data

ClutterDOA Batch

Figure 2. Observation model uses a batch of DOA mea-surements, generated by the beamformer block. Note that theDOA measurements are not necessarily ordered when theyare output from the beamformer. However, when the batchof DOA’s are treated as a bearing vs. time image, there is anatural ordering, which alleviates the multiple target trackingby the particle filter.

When the received signal characteristics change, the particlefilter tracker formulation is not affected because the beam-former block absorbs the variabilities in the acoustic signals.In the literature, various trackers use similar state-space for-mulations as in this paper [2–4]. The trackers presentedin [2, 3] directly employ the classical narrow-band observa-tion model, where targets exhibit constant narrow-band fre-quency characteristics [28, 31]. The tracker in [4] tries toadapt to varying time-frequency characteristics of the target

t

t+ Tt+ τ

t+ (M − 1)τtime

DOA

hθmτ (x(j))hθ

mτ (x(i))

Figure 3. The random sampling and particle filter blocks usethe state update function to create target track templates.Inthe figure, the solid line represents the true DOA track. Blackdots represent the noisy DOA estimates. The dashed line andthe dotted line represent the DOA tracks for the two proposedparticlesi andj. These tracks are calculated using the stateupdate functionh. Visually, ith particle is a better match thanthejth particle; hence, its likelihood is higher.

signals, assuming that the varying frequencies are narrow-band. The tracker in [6] also incorporates an amplitudemodel for the signals. Because their probability density equa-tions explicitly use an observation equation, these trackers arehardwired to their observation model. Hence, a complete re-work of the filter equations would be required to track tar-gets with e.g., wideband signal characteristics (e.g., from [6]to [32]).

σg

σg

σg

ROI Gate

Outliers

Figure 4. The random sampling block uses a gating oper-ation around the created target track templates. Solid lineisthe true DOA track. The DOA observations are shown withdots. Given a gate sizeσg, most DOA’s should fall into thegate of the target track to declare a ROI.

The second block in Fig. 1 addresses a fundamental issue forany target tracker: initialization and target detection. It isa random sampling block that efficiently localizes region-of-interests (ROI) in the calculated bearing batches to determinethe number of targets at each time. This block takes the bear-ing batches from the beamformer block and determinesKt

through gating operation based on the target motions, as il-lustrated in Figs. 3 and 4. The random sampling block de-termines the ROI for each targetone at a time, similar to thematching pursuit idea [33]. That is, it first converges on amode in the, possibly, multi-modal target posterior and siftsout the corresponding DOA data. It then iterates to find othermodes until stopping criteria are met. This block creates newpartitions (targets) for the particle filter, which can delete its

3

Page 4: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

own partitions. Conceptually, this initialization idea here isequivalent totrack-before-detectapproach used in the radarcommunity [9,10].

The final block is an independent partition particle filtertracker that uses the generated ROI’s by the random sam-pling plot to propose particles for efficiency [2]. Our parti-cle filter does not use a Markov random field to penalize thestate update function as the targets approach each other (tar-get interactions), since the target bearing may cross even ifthe targets are not close in proximity. While calculating theparticle weights, the tracker uses the bearing batch data fromthe beamformer block directly. The filter data-likelihood em-ploys the joint probability density assignment approach whentargets are close to each other to better address their data in-teractions [34, 35]. Note that the filter avoids any direct dataassociation thanks to the ROI processing by the random sam-pling block.

The particle filter block does not constrain the number of tar-getsKt that can be tracked by the filter. However, the numberof targets that can be tracked is theoretically bounded by thenumber of microphones in the acoustic array [28]. Figure 1also illustrates feedback paths (dashed lines) for guided sam-pling or beamforming. Although not fully explored in thispaper, we note that when the number of targets increase (e.g.,K=10), the particle filter tracker can provide guidance for therandom sampling and the beamformer blocks for further com-putational efficiency.

3. BEAMFORMER BLOCK

Beamforming is the name given to a wide variety of arrayprocessing algorithms that focus an array’s signal process-ing capabilities in a particular direction [28]. Beamformersuse the collected acoustic data to determine target DOA’s andare called narrow-band beamformers if they use the classi-cal narrow-band array observation model [28, 31]. Beam-formers are wideband if they are designed for target signalswith broadband frequency characteristics [36]. There are alsoother beamformers that are designed for signals with time-varying narrow-band frequency characteristics [37,38].

The beamformer block chooses a beamfomer for process-ing the acoustic data depending on the local characteristicsof the acoustic signals. That is, given the observed acousticsignal and its time-frequency distribution, we choose an op-timal beamformer to calculate target DOA’s. For example,we can choose multiple beamformers if the received acousticsignal shows both narrow-band and wideband characteristics.The output of the beamformeryt,f = yt+mτ,f(p)M−1

m=0 is aDOA data cube withPm,f -highest DOA peaks of the beam-former pattern (Fig. 2). In general, the number of DOA peaksPm,f at batch indexm and each frequency indexf should begreater than or equal to the number of targetsK. In the sim-ulations section, we fixPm,f = P but the derivations belowexplicitly show the dependance onm andf . Note that theinput of the particle filter has the same structure regardless of

the target signal characteristics.

Finally, the choice of the parameterτ for beamforming is de-termined by various physical constraints, including (i) targetfrequency range, (ii) target speed, and (iii) a target’s affinityto maneuver. For reasonable beamforming, at least two cyclesof the narrow-band target signals must be observed. This stip-ulates thatτ > 2/Fmin, whereFmin is the minimum beam-forming frequency for the target. Moreover, to keep the worstcase beamforming bias1 bounded for each DOA by an anglethreshold denoted byD, we approximately haveτ < 2D

θmax,

whereθmax is the maximum allowed bearing rate. Lastly, thetarget motion should satisfy the constant velocity assumptionduring the output periodT . For ground targets,T = 1s is areasonable choice. Note that at least two DOA estimates arenecessary to determine the state vector. To improve the ro-bustness of the tracker, we useM > 5 to decrease the prob-ability that the state is not observable due to missing DOA’s.Hence, the parameterτ is bounded by the following

2

Fmin

< τ < min

2D

θmax,T

M

. (5)

4. RANDOM SAMPLING FORREGION-OF-INTEREST PROCESSING

A region-of-interest (ROI) is defined as a cluster of any mea-surement sequence in time that is likely to be generated by atarget (Fig. 5). The number of ROIs in a bearing batch is astrong indicator of the number of targets. In this section, wedescribe the application of three random sampling methodsto determine the number of targets in bearing data batches,based on ROI processing. These three methods are namedRANSAC for random sampling consensus [14], MSAC form-estimator sampling consensus [19], and NAPSAC forNadjacent points sample consensus [22]. We will show thatthese algorithms provide more efficient ways of clustering thedata to initiate ROIs, when compared to other clustering ap-proaches applied to similar tracking problems [7,8].

Determining the ROIs using the bearing batches as pointstatistics becomes a challenging problem in the face of out-liers and missing bearing observations. To solve this prob-lem efficiently, each of the random sampling procedures usea small number of bearing estimates as feasible and enlargesthis set with consistent data as much as possible while iterat-ing. These algorithms are successfully used in many com-puter vision problems for geometric motion segmentation,model order selection, and multiple structure data regres-sion [14–20]. In this section, we show how to apply thesealgorithms for tracking multiple targets using point statistics.

In general, every possible sub set of data needs to be con-

1The bias is calculated by taking the angular average of the target track.Hence, this bias also depends on the heading direction. The worst case biashappens when the target heading and DOA sum up toπ. Moreover, it is alsopossible to analytically find an expected bias by assuming uniform headingdirection, using a similar analysis done in [3].

4

Page 5: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

0

Bearing

R1

R2

R3

R4

Batch Index

Figure 5. The circles are the DOA estimates in a batch.We illustrate four ROIs in the figureRi (i = 1, . . . , 4). Thefirst three ROIs show a clustering of DOA sequences in timethat are likely to be generated by targets, when we assumethat the target bearings slowly change along the batch index.The fourth ROIR4 is not likely to be a target since it haslesser number of bearings in its gate than the other ROIs andit covers a much larger bearing range in a short amount oftime.

sidered to determine a ROI. In the literature, this problem isknown as the set covering problem [11–13]. If we haveP

peaks for each batch of sizeM , thenω =(

MPM

)

cor-

respondences need to be considered for determining a ROIwith M samples. Furthermore, if there areK targets, then

a total ofΩ =(

ωK

)

≈ ωK (by Sterling’s formula) cor-

respondences also need to be considered. This calculation isfurther complicated, when some ROIs have missing data. Forour problem:

• We first consider the minimum sufficient number of datapoints and obtain a feasible solution. LetL denote the min-imum number of bearing samples required to determine thestate vectorxk using (3). By extending the solution using

onlyL-points, we decrease the search size toω =(

MPL

)

.

• We note that determining ROIs is temporal estimationproblem, hence we only seek temporal correspondences.

Therefore, we only need to considerω = PL ×(

ML

)

.

• When the targets are separated in the angle space, then wecan determine ROIs one at a time by removing the bearingpoints corresponding to the determined ROI without effectingthe data of the other targets.• When targets are close and they are already being tracked,the tracking information can be used to guide the ROI sam-pling.• When targets are close and they are not being tracked, nospecific identity is assigned to either target. Hence, an iden-tity confusion during initialization is assumed to have no costand can be corrected by the tracker by incorporating moretemporal data.

With our assumptions, a greedy combinatorics algorithm can

determine multiple targets withΩ∗ = PL ×(

ML

)

× K

complexity. Below, we show that we can decrease the compu-tational complexity of a greedy combinatorial algorithm byan

additional order of magnitude by allowing ourselves to missa ROI at a fractional probability. Note that, the probability ofmissing the same target over a many consecutive batches ex-ponentially goes to zero, as we gather more data. We furtherdiscuss the failure modes of the random sampling algorithmsand also suggest improvements later.

RANSAC

Introduced by Fischler and Bolles in [14], RANSAC is a hy-pothesis generation and verification algorithm for robust es-timation. It repeatedly generates solutions using a minimalset of data points and then tests the support of each solutionfrom the complete set of correspondences. For RANSAC, thenumber of correspondences within the gate of the proposedsolution (i.e., track template in Figs. 3, 4, and 5) defines thesupport of the putative correspondences.

The gate sizeσg determines the match acceptance and is usu-ally chosen in a conservative way to minimize the numberof incorrect mismatches. Note that the matching process isbased only on proximity and and similarity. Hence, it is quitelikely to have many mismatches in the presence of clutter,missed data, and presence of multiple targets, which are suf-ficient to render any least squares estimator incapacitated.

To determine our state vector in (1), we only needL = 2bearing estimates since two points are sufficient to determinea line on a 2D-plane. Given a putative solution that is de-termined by randomly chosenL-points (L≪ M ), RANSACalgorithm counts the set ofinliers that fall into the gate ofthe track template. Intuitively, if one of the chosen pointsisan outlier, the line will not gain much support (e.g.,R4 inFig. 5). However, if the chosenL-points are inliers (e.g., anytwo points withinRi, i = 1, 2, 3), a ROI is determined fromonly one iteration.

Let I be the number of RANSAC iterations required to deter-mine a ROI with probabilityp. Let us assume that in the datathere is only one target and the rest of the data are outliers.Letǫ denote the proportion of outliers and henceq = 1−ǫ denotethe probability that any selected point is an inlier. Then, afterI selections, the probability that all the selections are outliersare given by

1 − p = (1 − qL)I . (6)

Hence, the number of iterations required to pick an inlier setis given by

I =log(1 − p)

log (1 − (1 − ǫ)L). (7)

Table 1 determines the number of RANSAC iterations re-quired to ensure that a ROI is picked withp = .99 proba-bility. In this example, we haveM = 10 batch samples withP = 10 peaks,L = 2, and there is only one target.

To compare the complexity of the RANSAC’s operation, as-sume that there is no missing bearings in the target track, andhence there are 10 bearings corresponding to the target and

5

Page 6: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

Table 1. RANSAC IterationsI for p = .99

Sample size Proportion of Outliersǫ

L 50% 55% 60% 65% 70% 75% 80% 85% 90%2 17 21 27 36 49 72 113 203 4593 35 49 70 106 169 293 574 1363 46034 72 110 178 305 567 1177 2876 9095 460505 293 553 1123 2503 6315 18861 71954 404293 4605168

we have90 outliers, corresponding toǫ = .90. An exhaustive

search over all the bearings require(

102

)

× 102 = 4500

cases to search, whereas RANSAC only considers 459 casesto determine the ROI withp = .99 probability. This corre-sponds to an order of magnitude improvement in computa-tion. Moreover, when the targets have missing bearings, thecombinatorial approaches need to further process the clustersto link them temporally [7, 8]. On the other hand, RANSACdeclares a ROI even with missing bearings since the supportis not affected much by a few missing bearings. The pseudocode for the RANSAC algorithm is given in Table 2.

Table 2. RANSAC Algorithm

1. Randomly select L data points from the bearing batch data andinstantiate a solution xk using (3).

2. Determine the number of inlier points n that are within the σg

gate of the solution (for visualization, refer to Fig. 4).3. If the number of inliers are above some threshold α, e.g.,

α = M − 1, re-estimate the solution xk using all the inlier pointsusing (3) and terminate.

4. If the number of inliers are less than the threshold ω, re-select anew set of L-points randomly and repeat above.

5. After I trials, use the data set with the number of largestconsensus inlier set, and estimate the solution xk by using (3).

A few remarks are in order here. Note that the number of iter-ationsI depends on the proportion of the outliers and not theactual number of outliers. Therefore, the required computa-tion is still manageable even if the number of outliers is large.Moreover, increasing the number of samples used to instan-tiate a solutionxk more than the number of the minimal setis outweighed by the severe increase in the computation andis not desired. Note that once the inlier set is extended, theactual solution is found by using all the inliers.

To further save computation, it is natural to terminate theRANSAC loop if the number of inlier points are above somethreshold, denoted asω. This threshold can be judiciously setasα = ⌈ǫ∗M⌉, whereǫ∗ > .5 is the estimate of the worstcase proportion of the outliers. The worst case scenario isthat we have only one target and the rest of the data belongsto clutter. Hence, if we haveP = 8 beamformer peaks andM = 10 batch size, thenǫ∗ = 7/8, andα = ⌈7/8 × 10⌉ = 9can be used to stop.

RANSAC implicitly assumes that the outliers form a uniformdistribution in the bearing space. This is clearly not the case

when we have multiple targets. However, the presence ofmultiple targets actually implies that it is more likely to findone target in one application of RANSAC to the batch whenwe notice that we are not looking for a specific target at anygiven application of RANSAC. Determination of any one tar-get suffices. When we find a ROI in the batch, we delete thebearings corresponding to the ROI and rerun RANSAC on theresidual batch data. In this subsequent iteration of RANSAC,the number of outliers with respect to the number of targetsis reduced and hence it is easier to find a new target, if thereis any left.

A confusion issue arises when the bearing tracks of two tar-gets are in close proximity: i.e., crossing or parallel bear-ing data. We illustrate two cases for two targets crossing inbearings, where RANSAC may result in two incorrect ROIsR

′1 andR

′2. Most of the times, RANSAC may resolve these

cases. However, it is difficult to determine when it does not.During tracking, a guidance from the particle filter is used toresolve such cases. We further discuss how we can guide thesampling algorithms when we discuss NAPSAC. These casesare not important during initialization, since there is no needto assign an identity during initialization.

RANSAC may result in a false alarm when the clutter pointsare aligned according to the state update function in (3). Forour state vector, this happens when the clutter points approx-imately form a line. Analytical derivation of the probabilitythat random points in the bearing batch forms a line can bedone. However, it is cumbersome and does not provide anyadditional insight. In the simulations section, we show thatthe false alarm probability is approximately linear with thegate sizeσg . It also increases exponentially as the number ofbeamformer peaksP increase and decreases exponentially asthe number of batch samplesM increase.

Finally, the output of RANSAC is well suited for the parti-cle filter. The algorithm outputs multiple ROIs with detec-tion probabilitiesκ, false alarm probabilities (correspondingto a spurious ROI), and the miss data estimate in each ROI.Hence, the RANSAC output can also be used in the proposalfunction stage of the particle filter to better sample the multitarget posterior distribution.

MSAC

By using the redescending M-estimator [19, 21], a modestcomputational benefit can be achieved by using MSAC: m-estimator sample consensus. MSAC determines ROIs byminimizing the following cost function:

JMSAC =∑

all points i

ρ(e2i ), whereρ(e2) =

e2, e2 < σ2g ;

σ2g , e2 ≥ σ2

g .

(8)ande is the distance of the points to the putative solution.

MSAC does not explicitly determine any inlier set until af-ter its execution is over. Hence, its computational complexity

6

Page 7: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

Bea

rin

gd

ata

R1

R1

R2

R2

R′1

R′1

R′2

R′2

Batch Index

Figure 6. When the bearing tracks of two targets approacheach other, RANSAC may confuse the ROIs. Most of thetimes, RANSAC can correctly initialize the ROIs. However,sometimes the tracks are confused. In those cases, track in-formation from the particle filter can be used to resolve theconfusion, while sampling the ROIs.

is less than RANSAC, which specifically determines an in-lier set and records its count. However, where we can usean intuitive counting condition to stop RANSAC’s execution,the MSAC stopping condition needs to use statistical argu-ments. Note that the cost function is a summation of a chi-squared distribution withM degrees-of-freedom, and a sumof squared-uniform random variables. Although it is possibleto analytically determine a threshold corresponding to a givenconfidence level, we also need to consider missing data cases.Instead, we use the RANSAC’s stopping condition, based oncounting inliers, for MSAC in the simulations. The pseudocode for the MSAC algorithm is given in Table 3

Table 3. MSAC Algorithm

1. Randomly select L data points from the bearing batch data andinstantiate a solution xk using (3).

2. Determine the cost function JMSAC using (8). Also determine thenumber of inliers as in RANSAC.

3. If the number of inliers are above some threshold α, e.g.,α = M − 1, re-estimate the solution xk using all the inlier pointsusing (3) and terminate.

4. If the number of inliers are less than the threshold ω, re-select anew set of L-points randomly and repeat above.

5. After I trials, use the data set with the number of largestconsensus inlier set, and estimate the solution xk by using (3).

NAPSAC

In RANSAC or MSAC, we randomly sampleL points to in-stantiate a solution. When the number of data points is largeor when we would like to sample multiple targetsjointly, e.g.,two at a time, the probability of sampling a set of inliers de-creases exponentially due to increase in the dimensionality ofthe sampling problem. NAPSAC algorithm specifically ad-dresses these issues by pseudo-randomly generating its hy-potheses. NAPSAC stands for N-adjacent points sample con-sensus [22].

When we have multiple targets in the bearing batches, thecorresponding target bearings lie on manifolds that are morelikely to adjacent to other inlier points in a ROI than tothe outliers or pseudo-outliers, corresponding to other ROIs.Hence, if the first selected point is an inlier, the data pointsthat are close to it have higher probabilities of being inliers.On the other hand, if an outlier point is selected, then the ad-jacent points arelesslikely to be inliers. However, if, in fact,there areK targets in the bearing batch, then there will be atleastK regions, where sampling close to the initial randomsample improves over an unbiased random selection. Thisadvantage comes at the expense of more calculations.

Table 4. NAPSAC Algorithm

1. Randomly select 1-data point from the bearing batch data. Sortall the remaining points in increasing Eucledian distance from thispoint.

2. Use the absolute value of a Gaussian distribution with zero meanand a standard deviation kσg , where k is a value between M/4and M/2. Select a new point in the sorted list that is closest tothis random variable.

3. Repeat until L points are chosen and instantiate a solution xk

using (3).4. Count the number of inliers (or alternatively determine the cost

function JMSAC using (8)).5. If the number of inliers are above some threshold α, e.g.,

α = M − 1, re-estimate the solution xk using all the inlier pointsusing (3) and terminate.

6. If the number of inliers are less than the threshold ω, re-select anew set of L-points as above.

7. After I trials, use the data set with the number of largestconsensus inlier set, and estimate the solution xk by using (3).

In Table 4, we list the pseudo code for NAPSAC. On line 2,we show how to prioritize samples based on their proximityto the originally chosen random point on line 1. This strat-egy provides a guidance based on proximity. Other genericguidance methods exist using RANSAC for computer visionproblems [39]. For our specific problem, when we are look-ing for a new ROI corresponding to a target that is alreadybeing tracked, we can exploit the tracking information. Thisis achieved by weighting points according to their distancesto the updated track information. This way, the points that arecloser to the proposed track are chosen more often than oth-ers while determining a ROI. Even if the target maneuvers,its ROI can be easily easily determined since we are choosingthe points randomly based on proximity.

5. PARTICLE FILTER

In this section, the details of the particle filter block in Fig. 1are discussed. We first discuss the observation equation andthen describe the joint probabilistic density associationprin-ciple.

7

Page 8: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

Observation Equation

The observationsyt,f = yt+mτ,f(p)M−1m=0 consist of all the

batch DOA estimates from the beamformer block indexed bym. Hence, the acoustic data of lengthT is segmented intoMsegments of lengthτ . The batch of DOA’s,yt,f , is assumed toform an approximately normally distributed cloud around thetrue target DOA tracks (Fig. 2). In addition, only one DOAis present for each target at eachf or the target is missed.Multiple DOA measurements imply the presence of clutter orother targets. We also assume that there is a constant detec-tion probability for each target denoted byκf , where depen-dence onf is allowed. An additional partition dependency isalso allowed, i.e.,κf

k , since RANSAC may have a differentdetection probability when it detects the targets one at a timeusing a constant number of iterations.2

The particle filter observation model also includes a clut-ter model because beamformers can produce spurious DOApeaks as output (e.g., the sidelobes in the power vs. angle pat-terns) [28]. To derive the clutter model, we assume that thespurious DOA peaks are random with uniformspatialdistri-bution on the angle space, and are temporally as well as spa-tially independent. In this case, the probability distributionfor the number of spurious peaks is best approximated by thePoisson distribution with a spatial density [35, 40]. More-over, the probability density function (pdf) of the spuriouspeaks is the uniform distribution on[0, 2π). However, sincethe number of peaks in the beamformer output can be userdefined (P ), and that the beamformer power vs. angle patternhas smoothness properties, we use the following pdf for thespurious peaks:

p(θ|θ is spurious) =γ

2π, (9)

whereγ > 1 is a constant that depends on the maximumnumber of beamformer peaksP , the beamformer itself (i.e.,the smoothness of the beamformer’s steered response), andthe number of targetsK. Equation (9) implies that the natu-ral space (or similarly volume) of the clutter is reduced by afactor ofγ because of the characteristics of our specific sys-tem.

We now derive the data-likelihood function using the jointprobabilistic data association arguments found in [35]. Sim-ilar arguments for active contour tracking that is relevanttothis paper are found in [41]. Consider the output of one batchperiodym,f = yt+mτ,f(p), wherep = 0, 1, . . . , Pm,f foreachf andm. The DOA’sym,f may belong to none, or somecombination, or all of the targets in the particle filter parti-tions. Hence, we first define a notation to represent possiblecombinations between the data and the particle filter parti-tions to effectively derive the observation density.

2In addition, recognition/identification may have an impacton choice ofthe acoustic frequencies. Hence, some targets may have a lower detectionprobability at the recognized target frequencies. The partition dependenceof the detection probability can address this issue. It alsoallows the particlefilter to guide the beamformer block for improved detection.

Define a setIn that consists ofn-unordered combinationof all K-partitions of the particle filter state vector:In ∈KCn, whereKCn is the set of alln-unordered outcomesfromK possibilities. DefineKCn as the number of elementsof the setKCn. Hence, each element ofIn hasn numbers,and there are a total ofKCn elements. For example, whenK = 3 and n = 2, then I2 = 1, 2, 1, 3, 2, 3,each element referring to subset of the individual parti-tions of the particle state vector. We refer to the individ-ual elements of this set using the notationIn(j), wherej = 1, . . . ,KCn. Hence,I2(2) = 1, 3. Then, denotenxt(j) ∈ xi(t)|i ∈ In(j), xi(t) ∈ xt as a single realiza-tion from the setIn. Using the same example,2xt(3) =[

xT2 (t), xT

3 (t)]T

=[

xT1 (t), xT

2 (t)]T

. Hence, the setnxt(j) contains the same elements of the setnxt(j), re-indexed sequentially from1, . . . , n.

We denoteπn,j(ym,f ) = p(ym,f |nxt(j)) as the probabilitydensity function of the data, where onlyn-DOA’s belong tothe targets defined by the partitions ofnxt(j). Hence, whenn = 0, all data is due to clutter:

π0,1(ym,f ) =( γ

)Pm,f

(10)

The probability densityπn,j(ym,f ) can be calculated by not-ing that (i) there arePm,f !/(Pm,f − n)! ordered ways ofchoosing DOA’s to associate with then-subset partitions, and(ii) the remaining(Pm,f − n)-DOA’s are explained by theclutter. Therefore,

πn,j(ym,f ) =(Pm,f − n)!

(

γ/

2π)Pm,f−n

Pm,f !×

Pm,f∑

p1 6=p2 6=...6=pn

n∏

i=1

ψt,m,f

(

pi

∣xi

)

,

(11)

wherexi is in nxt(j), and the functionψ is derived from theassumption that the associated target DOA’s form a Gaussiandistribution around the true target DOA tracks:

ψt,m,f

(

pi

∣xi

)

=1√

2πσ2θ(m, f)

exp

−(

hθmτ (xi(t)) − yt+mτ,f (pi)

)2

2σ2θ(m, f)

,

(12)

where the superscriptθ on the state update functionh refersonly to the DOA component of the state update andσ2

θ(m, f)can be supplied by the beamformer block.

Note that the DOA distribution (12) is not a proper circulardistribution for an angle space. For angle spaces, the vonMises distribution is used as a natural distribution [42]. Thevon Mises distribution has a concentration parameter witha corresponding circular variance. It can be shown that forsmallσ2

θ << 1 (high concentration), the von Mises distribu-tion tends to the Gaussian distribution in (12) [43]. Becausethe von Mises distribution has numerical issues for smallDOA variances, the Gaussian approximation (12) is used inthis paper. Hence, special care must be taken in the imple-mentation to handle angle wrapping issues.

8

Page 9: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

The Gaussian in (11)ψ(·|·) are directly multiplied, becausethe partitions are assumed to be independent. To elaborate,considern = 2 andj = 3 from the example ofI2 above:

π2,3(ym,f ) ∝

Pm,f∑

p1=1

Pm,f∑

p2=1,p1 6=p2

ψt,m,f

(

p1

∣x1

)

ψt,m,f

(

p2

∣x2

)

Pm,f∑

p1=1

Pm,f∑

p2=1,p1 6=p2

ψt,m,f

(

p1

∣x2

)

ψt,m,f

(

p2

∣x3

)

.

(13)

Hence, the densityπ2,3(ym,f ) is a Gaussian mixture thatpeaks, when the updated DOA components of the partitions 2and 3 (hθ

mτ (·)) are simultaneously close to the observed. Notethat Eqn. (13) guarantees that no measurement is assigned tomultiple targets simultaneously.

Given the densitiesπn,j , the observation density function canbe constructed as a combination of all the target associationhypotheses. Hence, by adding mixtures that consist of thedata permutations and the partition combinations, we derivethe observation density:

p(yt|xt) =

F∏

f=1

M−1∏

m=0

K∑

n=0

κfn,K

KCn

KCn∑

j=1

πn,j(ym,f ). (14)

In Eqn. 14, the parametersκfn,K (

n κfn,K = 1) are the el-

ements of a detection (or confusion) matrix. For example,whenK = 2, κf

0,2 is the probability that no target DOA is

in the beamformer output, whereasκf1,2 (κf

2,2) means that 1(2) target DOA(’s) are present in the beamformer output ateachf . These fixed values are provided by the random sam-pling block. Moreover, when two partitionsk1 andk2 haveclose DOA tracks and are about to cross, it is possible thatthe beamformer’s Rayleigh resolution is not enough to out-put two DOA’s for both targets. Then, the particle filter canprovide a guidance, by using the current state estimates, tothe beamformer and the random sampling blocks to resolvethose cases.

Particle Filter Proposal Function

To demonstrate the performance of the system, we use onlythe state update function as the proposal function of the par-ticle filter. We propose each target partition independentlyto cope with the curse of dimensionality in sampling high di-mensions. Note that once the proposal function is formulated,the rest of the particle filter structure is well-defined: weight-ing and resampling. In weighting stage, the approximate pos-terior distribution is used when targets are sufficiently apart.When they are close, we use the joint posterior.

Algorithm Details

Pseudo-code of the particle filter algorithm is given in Ta-ble 5. The filter implementation employs an efficient resam-pling strategy, named “deterministic resampling”, first out-lined by Kitagawa [44]. This resampling strategy is preferred

because of (i) the efficient sorting of the particles and (ii)the number of random number generations. The determin-istic resampling strategy also has known convergence prop-erties [44]. Faster resampling schemes without convergenceproofs are also available [45] and these could make a differ-ence in the filter computation, especially whenK = 1.

Table 5. Particle Filter Tracker Pseudo-Code

Given the observed datayt,f = yt+mτ,f (p)M−1m=0 in [t, t+ T ), do

1. Fori = 1, 2, . . . , N• Fork = 1, 2, . . . ,K

samplex(i)k

(t) ∼ p(x(i)k

(t)|x(i)k

(t− T )).

• Formx(i)t =

[

x(i)1 (t), x

(i)2 (t), . . . , x

(i)K

(t)]T

.

2. Calculate the weights

w∗(i)t = w

(i)t−T

p(yt|x(i)t ),

wherep(yt|x(i)t ) is fully joint observation density, given by Eqn. (14).

3. Normalize the weights:

w(i)t =

w∗(i)t

i w∗(i)t

.

4. Make estimation:Ef(xt) =∑N

i=1 w(i)t f(x

(i)t ).

5. Resample the particles:• Heapsort the particles in a ascending order according to their

weights:x(i)t → x

(i)t .

• Generateω ∼ U [0, 1).• For j = 1, 2, . . . , N

a. u(j) = j−ωN

,

b. Findi, satisfying∑i−1

l=1 w(i)t < u(j) ≤

∑il=1 w

(i)t ,

c. Setx(j)t = x

(i)t .

Finally, the partitions are managed by the specific interactionbetween the particle filter and the random sampling block.New partitions are introduced into the particle filter, using thedistribution supplied by the random sampling block. The par-ticle filter deletes partitions at either the proposal stageor af-ter estimation, when there are not enough bearings within thegate of the mode estimate. Lastly, note that our implementa-tion of the particle filter does not make partition associationssuch as partitionsplit or merge. We leave these decisions to ahigher level fusion algorithm in the sensor network.

6. SIMULATIONS

Demonstration of the Random Sampling Block

Figures 7-13 show the performance of the random samplingalgorithms under varying conditions. Each figure is createdby a Monte-Carlo run of size 1000. Based on these figures,the authors subjectively rank the algorithms in the followingorder in usefulness: 1) RANSAC, 2) MSAC, and 3) NAP-SAC. Although we were expecting better performance fromNAPSAC, the assumptions of NAPSAC are not matched byour data. MSAC performs arguably better than RANSACin terms of root-mean-square error and false alarm proba-bility. However, its results are not as intuitive as RANSAC,

9

Page 10: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

which is based on the number of inliers as opposed to their m-estimator statistics. In the next subsection, we show how toextend the RANSAC idea to cope with bearing observationscorresponding to multiple frequencies.

101

102

1

2

3

4

5

6

7

Number of Iterations

Nu

mb

ero

fTar

get

s

(a) RANSAC

101

102

1

2

3

4

5

6

7

Number of Iterations

Nu

mb

ero

fTar

get

s

(b) MSAC

101

102

1

2

3

4

5

6

7

Number of Iterations

Nu

mb

ero

fTar

get

s

(c) NAPSAC

Figure 7. The number of iterations to converge to the truenumber of targets is shown for (a) RANSAC, (b) MSAC, and(c) NAPSAC.

10 12 14 16 18 200

0.01

0.02

0.03

0.04σ

g = 2

σg = 5

σg = 8

σg = 10

Pfa

M

(a) RANSAC

10 12 14 16 18 200

0.01

0.02

0.03

0.04σ

g = 2

σg = 5

σg = 8

σg = 10

Pfa

M

(b) MSAC

10 12 14 16 18 200

0.01

0.02

0.03

0.04σ

g = 2

σg = 5

σg = 8

σg = 10

Pfa

M

(c) NAPSAC

Figure 9. The false alarm rate of each of the algorithmsexponentially decay to zero as we increase the number batchsamplesM .

5 10 15 200

0.05

0.1

σg = 2

σg = 5

σg = 8

σg = 10

Pfa

P

(a) RANSAC

5 10 15 200

0.05

0.1

σg = 2

σg = 5

σg = 8

σg = 10

Pfa

P

(b) MSAC

5 10 15 200

0.05

0.1

σg = 2

σg = 5

σg = 8

σg = 10

Pfa

P

(c) NAPSAC

Figure 10. As we increase the number of peaksP , we allowmore clutter into the random sampling algorithms. Hence, thefalse alarm rate shows an increasing trend asP increases. Inthis example, the threshold for declaring a target isM − 1,whereM = 10. Hence, the false alarm rates are lower thanthe ones shown in Fig. 8.

Field Data Results

A uniform circular acoustic array with 8 microphones with 1meter radius is used to collect the acoustic data for a five ve-hicle convoy at the Aberdeen Proving Grounds. The acousticdata sampling rate wasFs = 1024Hz. The convoy consistedof two military Hummers (HMMV) and three commercialsports utility vehicles (SUV), traveling on gravel on an ovaltrack. Detection and tracking of the commercial vehicles pre-sented a difficult challenge because the commercial vehicleswere in between the two louder military vehicles, hence theywere acoustically suppressed (Fig. 14). Hence, this presentedan opportunity to test our tracking system. Our results fordifferent beamformer outputs are shown in Fig. 15.

One of the main problems while processing the field acous-tic data is getting reliable DOA estimates in multi target sce-narios. We observed that the beamformer would only output

101

102

10−1

100

RANSACMSACNAPSAC

Ave

rage

Run

Tim

e[s

]

Iterations

Figure 11. We compare the average run times of each ofthe algorithms with (solid lines) and without a stopping con-dition (dashed lines) in their iterations. Without the stoppingcondition, the algorithm runs a predetermined number of iter-ations. For the solid lines, we let the algorithms run a full 200iterations. For the dashed lines, the algorithms stopped them-selves when they found a ROI with number of inliers greaterthan or equal toM − 1 with M = 9. The stopping condi-tion allows us to save computation with no penalty. Also, theaverage run times exponentially increases with the number ofiterations.

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(a) RANSAC

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(b) MSAC

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(c) NAPSAC

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(d) RANSAC

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(e) MSAC

10 40 70 100 130 160 1900

0.25

0.5

0.75

1

1.25

1.5

Ru

nT

ime

[s]

Iterations

(f) NAPSAC

Figure 12. The variation of the run times are demonstrated.(a-c) Without stopping condition. (d-f) With stopping condi-tion.

100 120 140 160 180 2000

2

4

6

8

10

12

RM

Ser

ror

[]

Iterations

(a) RANSAC

100 120 140 160 180 2000

2

4

6

8

10

12

RM

Ser

ror

[]

Iterations

(b) MSAC

100 120 140 160 180 2000

2

4

6

8

10

12

RM

Ser

ror

[]

Iterations

(c) NAPSAC

Figure 13. The estimation performance of the random sam-pling algorithms are compared. It is seen that RANSAC andMSAC performs similarly. NAPSAC performs the worst.

10

Page 11: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

0 5 100

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

σg

Pro

babi

litie

s

(a) RANSAC

0 5 100

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

σg

Pro

babi

litie

s

(b) MSAC

0 5 100

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

σg

Pro

babi

litie

s

(c) NAPSAC

0 0.1 0.2 0.30

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

Pfa

Pd

(d) RANSAC

0 0.1 0.2 0.30

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

Pfa

Pd

(e) MSAC

0 0.1 0.2 0.30

0.2

0.4

0.6

0.8

r = 1

σr = 2

σr = 3

σr = 4

σr = 5

σr = 6

σr = 7

σr = 8

σr = 9

σr = 10

Pfa

Pd

(f) NAPSAC

Figure 8. (a-c) The detection probability (solid lines) and the false alarm probabilities (dashed lines) are shown for the randomsampling algorithms for varying gate sizeσg. Note that for this particular case, the bearing data noise is changed between 1to 10 degrees to show the effect of the model mismatches. Our threshold for accepting a ROI is at leastM/2 + 1 = 6 peaks.(d-f) The receiver operating characteristics (ROC) is shown. In general, ROC curves are always concave and non-decreasing byconstruction. Hence, some of the ROC curves in the plots exhibit uncharacteristic behaviors. Possible reasons are the mismatchof the gate size and the bearing variance, and the presence ofclutter.

DOA estimates corresponding to a subset of the targets. Af-ter careful investigation, it was determined that the acousticsignatures of the weak targets were being suppressed by thelouder ones. To detect more targets, we modified the beam-former to use up to 10 frequencies and to also select severalpeaks in the steered frequency response. The beamformeralso used multiple snapshots of data. These modificationsresult in the ability to detect silent targets; however, it sub-stantially increased the amount of clutter.

We modified the random sampling block to cope with thepresence of multiple observations per target. Moreover,since the number of peaks could change from one data setto another, we formulated adaptive thresholds to accept theRANSAC ROI output and declare a target. A number of mea-sures are taken. The first measure is to put a minimum boundon the number of batch indexes, in which inliers are found.This is to ensure the DOA estimates are spread over the en-tire batch of data as one would expect from an actual tar-get. A value of 85% of the number of batch indexes is used.The next measure is to put a lower limit on the total numberof inliers found by the RANSAC block. Hence, we assumethat the maximum number of targets our system would trackis less than the number of microphones in the acoustic ar-ray and compute the number of DOA estimates per target ina scenario with the maximum number of targets. The third

measure is an upper limit on the gradient of the line foundby RANSAC. After taking into consideration real world con-straints of vehicle motion and observing the field data, it wasdetermined that a change in more than 6 degrees per batchindex would not be considered a target. Similar thresholdswere used to decide when to delete targets.

time in [s]

Fre

quen

cy [H

z]

0 10 20 30 40 50 60 70 800

50

100

150

200

Figure 14. Time-frequency plot of the acoustic signal isshown. The dots are the narrow-band frequencies used bythe beamformer block to determine candidate target bearings.

Our system was able to robustly deal with the clutter and cor-rectly track the convoy as can be seen in Fig. 15. There are afew spurious targets due to the persistence of the beamformersidelobes. However, these sidelobes have a well understoodcharacteristics and it is possible to detect targets that corre-spond to the power leakage due to the sidelobes. For the parti-cle filter, we used 2500 particles since we did not incorporate

11

Page 12: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

the ROI processing in our proposal stage. As future work, wewill incorporate the ROI processing to increase the efficiencyof our particle tracker. The gate size is judiciously chosentobe 9 degrees. The gate size can also be chosen adaptively byusing a bank of random sampling blocks. We are currentlyinvestigating how to statistically and automatically infer theresults of such random sampling banks.

7. CONCLUSIONS

In this paper, we demonstrated the application of RANSAC,MSAC, and NAPSAC algorithms for processing region-of-interests to track multiple targets using bearing measure-ments. We showed that each of these algorithms are wellsuited for ROI processing in conjunction with a tracker.Among the random sampling algorithms, we determined thatRANSAC is the most useful because of its performance andits flexibility to also handle multi frequency target trackingcase. Our tracking results show significant promise in the ROIprocessing algorithms proposed in this paper since a simplebootstrap particle filter could handle a difficult convoy sce-nario.

8. ACKNOWLEDGEMENTS

We would like to thank Dr. Rama Chellappa for his help andcomments in the preparation of this manuscript.

REFERENCES

[1] C. K. Sword, M. Simaan, and E. W. Kamen, “Mul-tiple target angle tracking using sensor array output,”IEEE Trans. Aerosp. Electron. Syst., vol. 26, pp. 367–372, Mar. 1990.

[2] M. Orton and W. Fitzgerald, “A Bayesian approach totracking multiple targets using sensor arrays and particlefilters,” IEEE Trans. on Signal Processing, vol. 50, no.2, pp. 216–223, February 2002.

[3] Y. Zhou, P. C. Yip, and H. Leung, “Tracking thedirection-of-arrival of multiple moving targets by pas-sive arrays: Algorithm,” IEEE Trans. on Signal Pro-cessing, vol. 47, no. 10, pp. 2655–2666, October 1999.

[4] V. Cevher and J. H. McClellan, “General direction-of-arrival tracking with acoustic nodes,”IEEE Trans.on Signal Processing, vol. 53, no. 1, pp. 1–12, January2005.

[5] V. Cevher, R. Velmurugan, and J. H. McClel-lan, “Acoustic multi target tracking usingdirection-of-arrival batches,” to appear IEEETransactions on Signal Processing, available athttp://www.umiacs.umd.edu/users/volkan/publications.htm.

[6] J.-R. Larocque, J. P. Reilly, and W. Ng, “Particle fil-ters for tracking an unknown number of sources,”IEEETrans. on Signal Processing, vol. 50, no. 12, pp. 2926–2937, Dec. 2002.

[7] W. Ng, J. Li, S. Godsill, and J. Vermaak, “A Hybrid

Approach for Online Joint Detection and Tracking forMultiple Targets,” inAerospace, 2005 IEEE Confer-ence, 2005, pp. 1–16.

[8] W. Ng, J. Li, S. Godsill, and J. Vermaak, “Multipletarget tracking using sequential Monte Carlo methodsand efficient data association and initialisation,”IEEProceedings Radar, Sonar & Navigation, 2004.

[9] M. G. Rutten, B. Ristic, and N. J. Gordon, “A compari-son of particle filters for recursive track-before-detect,”in 8th International Conf. on Info. Fus., July 2005,vol. 1, pp. 169–175.

[10] Y. Boers and J. N. Driessen, “Multitarget particle fil-ter track before detect application,”IEE Proc. Radar,Sonar, and Navigation, vol. 151, no. 6, pp. 351–357,Dec. 2004.

[11] J. E. Beasley and et al., “A genetic algorithm for the setcovering problem,” European Journal of OperationalResearch, vol. 94, no. 2, pp. 392–404, 1996.

[12] V. Chvatal, “A greedy heuristic for the set-coveringproblem,” Mathematics of Operations Research, vol.4, no. 3, pp. 233–235, 1979.

[13] D. S. Hochbaum, Approximation algorithms for NP-hard problems, PWS Publishing Co. Boston, MA, USA,1996.

[14] M.A. Fischler and R.C. Bolles, “Random sample con-sensus: a paradigm for model fitting with applicationsto image analysis and automated cartography,”Com-munications of the ACM, vol. 24, no. 6, pp. 381–395,1981.

[15] P. H. S. Torr, “Geometric motion segmentation andmodel selection,” Philosophical Transactions of theRoyal Society A: Mathematical, Physical and Engineer-ing Sciences, vol. 356, no. 1740, pp. 1321–1340, 1998.

[16] H. Chen, P. Meer, and D. E. Tyler, “Robust regressionfor data with multiple structures,” in2001 IEEE Con-ference on Computer Vision and Pattern Recognition,2001, pp. 1069–1075.

[17] C. V. Stewart, “Bias in robust estimation caused by dis-continuities and multiplestructures,”Pattern Analysisand Machine Intelligence, IEEE Transactions on, vol.19, no. 8, pp. 818–833, 1997.

[18] H. Wang and D. Suter, “Robust adaptive-scale paramet-ric model estimation for computer vision,”IEEE Trans-actions on Pattern Analysis and Machine Intelligence,vol. 26, no. 11, pp. 1459–1474, 2004.

[19] P. H. S. Torr and A. Zisserman, “MLESAC: a new ro-bust estimator with application to estimating image ge-ometry,” Computer Vision and Image Understanding,vol. 78, no. 1, pp. 138–156, 2000.

[20] R. Hartley and A. Zisserman,Multiple View Geometryin computer vision, Cambridge University Press, 2003.

[21] P. J. Huber, “Robust estimation of a location parameter,”

12

Page 13: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Bea

mfo

rmer

Out

put [

°]

(a)P = 10

100 200 300 400 500 600

−250

−200

−150

−100

−50

0

50

Batch Index

RA

NS

AC

Est

imat

es [°

]

(b) RANSAC

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Par

ticle

Filt

er E

stim

ates

[°]

(c) Particle Filter

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Bea

mfo

rmer

Out

put [

°]

(d)P = 20

100 200 300 400 500 600

−250

−200

−150

−100

−50

0

50

Batch Index

RA

NS

AC

Est

imat

es [°

]

(e) RANSAC

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Par

ticle

Filt

er E

stim

ates

[°]

(f) Particle Filter

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Bea

mfo

rmer

Out

put [

°]

(g)P = 40

100 200 300 400 500 600

−250

−200

−150

−100

−50

0

50

Batch Index

RA

NS

AC

Est

imat

es [°

]

(h) RANSAC

0 10 20 30 40 50 60 70 80

−250

−200

−150

−100

−50

0

50

time in [s]

Par

ticle

Filt

er E

stim

ates

[°]

(i) Particle Filter

Figure 15. (a) The MUSIC beamformer results are shown for the 10 strongest frequencies, where we only picked the highestpeak in each power vs. angle pattern. Corresponding RANSAC (b) and particle filter results (c) for the bearing batches. (d)The MUSIC beamformer results are shown for the 5 strongest frequencies. This time, we used the 4 highest peaks in eachpower vs. angle pattern. Corresponding RANSAC (e) and particle filter results (f) for the bearing batches. (c) The MUSICbeamformer results are shown for the 10 strongest frequencies. This time, we used the 4 highest peaks in each power vs. anglepattern. Corresponding RANSAC (h) and particle filter results (i) for the bearing batches. Note that the actual number oftargetsis 5.

The Annals of Mathematical Statistics, vol. 35, pp. 73–101, March 1964.

[22] D. R. Myatt, P. H. S. Torr, S. J. Nasuto, J. M. Bishop,and R. Craddock, “Napsac: High noise, high dimen-sional robust estimation-its in the bag,” inBritish Ma-chine Vision Conference, Cardiff, UK, 2002, pp. 458–467.

[23] J. S. Liu and R. Chen, “Sequential Monte Carlo meth-ods for dynamic systems,”Journal of the American Sta-tistical Association, vol. 93, pp. 1032–1044, September1998.

[24] A. Doucet, N. Freitas, and N. Gordon, Eds.,Sequen-tial Monte Carlo Methods in Practice, Springer-Verlag,2001.

[25] D. Crisan and A. Doucet, “A survey of convergenceresults on particle filtering methods for practitioners,”IEEE Trans. on Signal Processing, vol. 50, no. 3, pp.736–746, March 2002.

[26] J. MacCormick and M. Isard, “Partitioned sampling,articulated objects, and interface-quality hand tracking,”in Proceedings of the Europen Conference on ComputerVision, 2000.

13

Page 14: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

[27] M. Isard and J. MacCormick, “BraMBLe: A Bayesianmultiple-blob tracker,” in8th International Conferenceon Computer Vision, 2001.

[28] D. H. Johnson and D. E. Dudgeon,Array Signal Pro-cessing: Concepts and Techniques, Prentice Hall, 1993.

[29] R. Mahler, L. D. Syst, and M. N. Eagan, “Nonadditiveprobability, finite-set statistics, and informationfusion,”in Decision and Control, 1995., Proceedings of the 34thIEEE Conference on, 1995, vol. 2.

[30] W. L. Brogan, Modern Control Theory, Prentice Hall,1991.

[31] P. Stoica and A. Nehorai, “Music, maximum likelihood,and Cramer-Rao bound,”IEEE Trans. on ASSP, vol. 37,no. 5, pp. 720–741, May 1989.

[32] W. Ng, J. P. Reilly, T. Kirubarajan, and R.-R. Larocque,“Wideband array signal processing using mcmc meth-ods,” IEEE Trans. on Signal Processing, vol. 53, no. 2,pp. 411–426, Feb. 2005.

[33] S. Mallat and S. Zhang, “Matching pursuits with time-frequency dictionaries,”IEEE Trans. on Signal Process-ing, vol. 41, no. 12, pp. 3397–3415, Dec. 1993.

[34] Samuel S. Blackman,Multiple-Target Tracking withRadar Application, Artech House, 1986.

[35] Y. Bar-Shalom and T. Fortmann,Tracking and DataAssociation, Academic-Press, 1988.

[36] H. Wang and M. Kaveh, “On the performance of signal-subspace processing-part II: Coherent wide-band sys-tems,” IEEE Trans. on Acoustics, Speech, and SignalProcessing, vol. ASSP-35, pp. 1583–1591, Nov. 1987.

[37] A. B. Gershman and M. G. Amin, “Wideband direction-of-arrival estimation of multiple chirp signals using spa-tial time-frequency distributions,” inProceedings of theTenth IEEE Workshop on Statistical Signal and ArrayProcessing, 29 Oct. -1 Nov. 2000, pp. 467–471.

[38] A. B. Gershman, M. Pesavento, and M. G. Amin, “Esti-mating the parameters of multiple weideband chirp sig-nals in sensor arrays,”IEEE Signal Processing Letters,vol. 7, no. 6, pp. 152–155, June 2000.

[39] B. Tordoff and D. W. Murray, “Guided Sampling andConsensus for Motion Estimation,” inProceedings ofthe 7th European Conference on Computer Vision-PartI. 2002, pp. 82–98, Springer-Verlag London, UK.

[40] A. Papoulis and S. U. Pillai,Probability, random vari-ables and stochastic processes, McGraw Hill, 2002.

[41] J. MacCormick and A. Blake, “A probabilistic exclu-sion principle for tracking multiple objects,” in7th In-ternational Conference on Computer Vision, 1999, pp.572–578.

[42] M. Evans, N. Hastings, and B. Peacock,Statistical Dis-tributions, 3rd ed., Wiley, 2000.

[43] T. Edgoose, L. Allison, and D. L. Dowe, “An MMLclassification of protein sequences that knows about an-

gles and sequences,” inPacific Symp. Biocomputing 98,Jan. 1998, pp. 585–596.

[44] G. Kitagawa, “Monte-Carlo filter and smoother for non-Gaussian nonlinear state space models,”Journal ofComp. and Graph. Stat., vol. 5, no. 1, pp. 1–25, Mar1996.

[45] M. Bolic, P. M. Djuric, and S. Hong, “New resamplingalgorithms for particle filters,” inICASSP, 2003.

Volkan Cevher was born in Ankara,Turkey, in 1978. He received his B.S.degree in Electrical Engineering fromBilkent University, Ankara, Turkey in1999 as a valedictorian. During summerof 2003, he was employed by Schlum-berger Doll Research. In Fall 2004, hewas the co-recipient of the Center for

Signal and Image Processing Outstanding Research Award.He received his Ph.D. degree in Electrical Engineering fromGeorgia Institute of Technology in 2005. He worked a post-doc at Georgia Institute of Technology under the supervisionof Dr. James H. McClellan till the end of 2005. He is cur-rently working with Dr. Rama Chellappa as a research as-sociate on computer vision problems. His research interestsinclude structure from motion, sensor network managementproblems (sensor build and placement strategies), Monte-Carlo Markov chain methods (specifically particle filters),target tracking models, adaptive filters, time frequency dis-tributions, fractional Fourier transform, brain-computer in-terface problems, and array signal processing.

Faisal Shah was born in Hancock,Michigan. He received his B.S. and M.S.degrees in Electrical Engineering fromGeorgia Institute of Technology in 2004and 2006 respectively. He is currentlypursuing his Ph.D. degree at Georgia In-stitute of Technology under the advise-ment of Prof. James H. McClellan. His

research interests include particle filtering, target tracking,and array signal processing.

Rajbabu Velmurugan received hisB.E. degree from Government College ofTechnology, Coimbatore, India in 1995and M.S. degree from Clarkson Uni-versity, Potsdam, USA in 1998, bothin electrical engineering. He workedin Larsen & Toubro Ltd., India beforejoining Clarkson University and in The

14

Page 15: A Multi Target Bearing Tracking System using Random Sampling …vc3/tracking_using_RANSAC.pdf · 2006-12-13 · A Multi Target Bearing Tracking System using Random Sampling Consensus

MathWorks from 1998 to 2001. He is currently pursuing hisPh.D. degree at Georgia Institute of Technology under the ad-visement of Prof. James H. McClellan. His research interestsinclude particle filtering techniques, design and implementa-tion of real-time signal processing systems, and array signalprocessing. He is also interested in teaching and involved inprojects related to signal processing education.

James H. McClellan received theB.S. degree in Electrical Engineeringfrom L.S.U. in 1969, and the M.S. andPh.D. degrees from Rice University in1972 and 1973, respectively. From 1973to 1982, he was a member of the re-search staff at Lincoln Laboratory andthen a professor at MIT. From 1982 to

1987, Dr. McClellan was employed by Schlumberger WellServices. Since 1987, he has been a Professor in the School ofElectrical and Computer Engineering at Georgia Tech, wherehe presently holds the John and Marilu McCarty Chair.He is a co-author of the textsNumber Theory in Digital Sig-nal Processing, Computer Exercises for Signal Processing,DSP First: A Multimedia Approach,and Signal ProcessingFirst,which received the McGraw-Hill Jacob Millman awardfor an outstanding innovative textbook in 2003. In 1998,Prof. McClellan received the W. Howard Ector OutstandingTeacher Award at Georgia Tech, and in 2001, the EducationAward from the IEEE Signal Processing Society. In 1987,he received the Technical Achievement Award for work onFIR filter design, and in 1996, the Society Award, both fromthe IEEE Signal Processing Society. In 2004, he was a co-recipient of the IEEE Jack S. Kilby Signal Processing medal.Prof. McClellan is a Fellow of the IEEE and a member of TauBeta Pi and Eta Kappa Nu.

15