  Face recognition is a rapidly developing and widely applied aspect of
biometric technologies. Its applications are broad, ranging from law
enforcement to consumer applications, and industry efficiency and monitoring
solutions. The recent advent of affordable, powerful GPUs and the creation of
huge face databases has drawn research focus primarily on the development of
increasingly deep neural networks designed for all aspects of face recognition
tasks, ranging from detection and preprocessing to feature representation and
classification in verification and identification solutions. However, despite
these improvements, real-time, accurate face recognition is still a challenge,
primarily due to the high computational cost associated with the use of Deep
Convolutions Neural Networks (DCNN), and the need to balance accuracy
requirements with time and resource constraints. Other significant issues
affecting face recognition relate to occlusion, illumination and pose
invariance, which causes a notable decline in accuracy in both traditional
handcrafted solutions and deep neural networks. This survey will provide a
critical analysis and comparison of modern state of the art methodologies,
their benefits, and their limitations. It provides a comprehensive coverage of
both deep and shallow solutions, as they stand today, and highlight areas
requiring future development and improvement. This review is aimed at
facilitating research into novel approaches, and further development of current
methodologies by scientists and engineers, whilst imparting an informative and
analytical perspective on currently available solutions to end users in
industry, government and consumer contexts.
