Face detection or recognition in python can be implemented using OpenCV library where classifiers are also for a better accuracy.
OpenCV (Open Source Computer Vision Library) is an open-source computer vision and machine learning software library which is built to provide a common infrastructure for machine learning algorithms and computer vision.
NumPy is the fundamental package for scientific computing in Python which provides a multidimensional array object other mathematical operations.
Haar Cascade is basically a classifier which is used to detect the objects for which it has been trained for, from the source. The result is an XML file which stores the trained result.