This document describes a face detection and recognition system using OpenCV and Python. The system has three main modules: detection, training, and recognition. The detection module uses a Haar cascade classifier to detect faces in images or video. In the training module, the detected face images are used to train a classifier using local binary patterns histograms. The recognition module then extracts features from new images and compares them to the trained classifier to recognize faces. Sample code is provided for the training, dataset collection, and face detection steps. The system provides a basic real-time face recognition capability with potential for improvement by adding preprocessing and more advanced features.