Research of Viola-Jones Face Detection Algorithm Performance Optimization Based on OpenCL

Hai-Peng JIA,Yun-Quan ZHANG,Liang YUAN,Shi-Gang LI
DOI: https://doi.org/10.11897/SP.J.1016.2016.01775
2016-01-01
Chinese Journal of Computers
Abstract:Viola-Jones face detection algorithm is one of the most successful and functional face detection algorithm. However,with the continuous expansion of the processing data, the performance of existing algorithm has become increasingly unable to meet its growing interactive and real-time requirements.Improving the algorithm performance through using GPU computing platform,so as to meet the growing requirements of real-time has become a hot topic.However, face detection algorithm exposes irregular feature of workload imbalance among threads when ported to GPUs.It is hard to obtain high performance if only using the conventional optimization methods.In this paper,we present an OpenCL-implementation of Viola-Jones face detection algorithm with high performance on GPUs through five main techniques:kernel merge,coarse-grained parallelism,persistent threads,dynamic mapping between thread and task and global queues.Furthermore,this paper also achieves performance portability between different GPU computing platforms by defining,extracting and delivering key performance parameters of hard-ware.We also demonstrate the high performance of our implementation by comparing it with a well-optimized CPU version from OpenCV library.Experiment results show that the performance speedup reaches up to 11.24—20.27 times and 9.24—17.62 times on AMD HD7970 and NVIDIA GTX680 GPU respectively,not only achieves high performance but also achieves performance portability among different GPU computing platforms.
What problem does this paper attempt to address?