Abstract
This work presents an effective approach to visual tracking using a graphics processing unit (GPU) for computation purposes. In order to get a performance improvement against other platforms it is convenient to select proper algorithms such as population-based ones. They expose a parallel-friendly nature needing from many independent evaluations that map well to the parallel architecture of the GPU. To this end we propose a particle filter (PF) hybridized with a memetic algorithm (MA) to produce a MAPF tracking algorithm for single and multiple object tracking problems. Previous experimental results demonstrated that the MAPF algorithm showed more accurate tracking results than the standard PF, and now we extend those results with the first complete adaptation of the PF and the MAPF for visual tracking to the NVIDIA CUDA architecture. Results show a GPU speedup between 5×–16× for different configurations.
Similar content being viewed by others
Notes
For the sake of simplicity, superscript \(t\) is omitted.
References
Arulampalam S, Maskell S, Gordon N, Clapp T (2002) A tutorial on particle filters for on-line nonlinear/non-Gaussian Bayesian tracking. IEEE Trans Signal Process 50(2):174–188
Asanovic K, Bodik R, Catanzaro BC, Gebis JJ, Husbands P, Keutzer K, Patterson DA, Plishker WL, Shalf J, Williams SW, Yelick KA (2006) The landscape of parallel computing research: a view from Berkeley. Tech report UCB/EECS-2006-183, EECS Department, University of California, Berkeley
Cabido R, Montemayor AS, Pantrigo JJ, Payne BR (2009) Multiscale and local search methods for real time region tracking with particle filters: local search driven by adaptive scale estimation on GPUs. Mach Vis Appl 21(1):43–58
Carpenter J, Clifford P, Fearnhead P (1999) Building robust simulation based filters for evolving data sets. Dept Statist, University of Oxford, Oxford, UK
Caviar test case scenarios (2010) http://homepages.inf.ed.ac.uk/rbf/CAVIARDATA1/
Cui J, Sun Z (2004) Vision-based hand motion capture using genetic algorithm. Lect Notes Comput Sci 3005:289–300
Dawkins R (1976) The selfish gene. Clarendon Press, Oxford
Deutscher J (2000) Articulated body motion capture by annealed particle filtering. In: IEEE conference on in computer vision and pattern recognition, pp 126–133
Deutscher J, Reid I (2005) Articulated body motion capture by stochastic search. Int J Comput Vis 61(2):185–205
Gordon NJ, Salmond DJ, Smith AFM (1993) Novel approach to nonlinear/non-Gaussian Bayesian state estimation. IEE Proc F Radar Signal Process 140(2):107–113
GPGPU (2010) GPGPU: General-purpose computation using graphics hardware. http://www.gpgpu.org
Hart WE, Krasnogor N, Smith JE (2005) Recent advances in memetic algorithms. Springer, New York
Isard M, Blake A (1996) Visual tracking by stochastic propagation of conditional density. In: 4th European conference on computer vision, pp. 343–356
Isard M, Blake A (1998) CONDENSATION—conditional density propagation for visual tracking. Int J Comput Vis 29:5–28
Kirk DB, Hwu WW (2010) Programming massively parallel processors: a hands on approach. Morgan Kaufmann
Krüger F, Maitre O, Jimenez S, Baumes L, Collet P (2010) Speedups between ×70 and ×120 for a generic local search (memetic) algorithm on a single GPGPU chip. In: EvoNum 2010, LNCS, vol 6024, pp 501–511
Lanvin P, Noyer J-C, Benjelloun M (2005) An hardware architecture for 3D object tracking and motion estimation. In: Proceedings of international conference on multimedia and expo (ICME)
MacCormick J (2002) Stochastic algorithms for visual tracking: probabilistic modelling and stochastic algorithms for visual localisation and tracking. Springer, Secaucus
MacCormick J, Blake A (2000) Partitioned sampling, articulated objects and interface-quality hand tracking. In: 7th European conference on computer vision, vol 2, pp 3–19
Mateo O, Otsuka K (2009) Real-time visual tracker by stream processing: simultaneous and fast 3D tracking of multiple faces in video sequences by using a particle filter. J Signal Process Syst 57(2):285–295
Montemayor AS, Pantrigo JJ, Sánchez A, Fernández F (2004) Particle filter on GPUs for real time tracking. In: ACM SIGGRAPH 2004 posters
Montemayor AS, Payne BR, Pantrigo JJ, Cabido R, Sánchez A, Fernández F (2006) Improving GPU particle filter with shader model 3.0 for visual tracking. In: ACM SIGGRAPH, poster session
Moscato P (1999) Memetic algorithms: a short introduction. In: Corne D, Dorigo M, Glover F (eds) New ideas in optimization. McGraw Hill, pp 219–234
NVIDIA CUDA GPU Occupancy Calculator, CUDA SDK (2010)
NVIDIA, CUDA Zone (2010) http://www.nvidia.com/object/cuda_home.html
Pantrigo JJ, Hernández J, Sánchez A (2010) Multiple and variable target visual tracking for video surveillance applications. Pattern Recogn Lett 31(12):1577–1590
Pantrigo JJ, Montemayor AS, Sánchez A (2011) Heuristic particle filter: applying abstraction techniques to the design of visual tracking algorithms. Exp Syst 28(1):49–69
Patterson D, Asanovic K, Keutzer K (2007) Computer architecture is back—the Berkeley view of the parallel computing research landscape. Stanford EE Computer Systems Colloquium
Rossi C, Abderrahim M, Díaz JC (2008) Tracking moving optima using kalman-based predictions. Evol Comput 16(1):1–30
Sanders J, Kandrot E (2010) CUDA by example: an introduction to general-purpose GPU programming. Addison-Wesley
Särkkä S, Vehtari A, Lampinen J (2007) Rao-Blackwellized particle filter for multiple target tracking. Inf Fusion J 8:2–15
Shen S, Tong M, Deng H, Liu Y, Wu X, Wakawbayashi K, Koike H (2008) Model based human motion tracking using probability evolutionary algorithm. Pattern Recogn Lett 28:1877–1886
Thrun S (2002) Particle filters in robotics. In: 17th annual conference on uncertainty in AI (UAI)
Yalçin IK, Gökmen M (2006) Integrating differential evolution and condensation algorithms for license plate tracking. In: ICPR ’06: proceedings of the 18th international conference on pattern recognition. IEEE Computer Society, Washington, pp 658–661
Yilmaz A, Javed O, Shah M (2006) Object tracking: a survey. ACM Comput Surv 38(4):1–45
Zotkin D, Duraiswami R, Davis L (2002) Joint audio-visual tracking using particle filters. EURASIP J Appl Signal Process 11:1154–1164
Zhu L, Zhou J, Song J (2008) Tracking multiple objects through occlusion with online sampling and position estimation. Pattern Recogn 41(8):2447–2460
Acknowledgments
This research has been partially supported by the Spanish project TIN2008-06890-C02-02.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Cabido, R., Montemayor, A.S. & Pantrigo, J.J. High performance memetic algorithm particle filter for multiple object tracking on modern GPUs. Soft Comput 16, 217–230 (2012). https://doi.org/10.1007/s00500-011-0715-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-011-0715-2