1. Introduction
Face detection is the most important pre-processing step for many facial analysis tasks such as landmark detection [20], [55], face alignment [51], [43], [32], face recognition [30], face synthesis [42], [10], etc. The accuracy of face detection systems has a direct impact on these tasks and hence, the success of face detection is of crucial importance. Various challenges such as variations in pose, scale, illumination changes, variety of facial expressions, occlusion, etc., have to be addressed while building face detection algorithms. The success of Viola Jones face detector [40] enabled widespread usage of face detection in a variety of consumer devices and security systems.