Real-Time 3D Ball Tracking with CPU-GPU Acceleration Using Particle Filter with Multi-command Queues and Stepped Parallelism Iteration
Yilin Hou, Xina Cheng, Takeshi Ikenaga · 2017
3D ball tracking is a critical function in many applications such as game and players' behavior analysis, and real time implementation has become increasingly important for it can be used for live broadcast and TV contents. To reach a high accuracy, algorithms usually are time consuming due to a large set of calculations which is challenging to meet real time demanding. This paper proposes multiple command queues, tactical threads allocation and stepped iterative addition to empower such a capacity on the CPU-GPU platform. Multiple command queues achieves a parallelism between tasks in the algorithm. Secondly, the tactical threads allocation helps mapping the algorithm into GPU and enhances synchronism between threads. And this paper proposes stepped iterative addition to achieve partial parallelism in a sequential operation. This work implements in an Intel Core i7-6700 GPU and AMD Radeon R9 FURY GPU. Tracking speed of our work increases 37.8 times from original 431ms to 11.7ms while the success rate of the algorithm retains over 99%. This result fully meets the requirement of 16.6ms per frame for 60fps video real-time tracking.