
Explore the difference between face detection and recognition and implement Python and OpenCV techniques—Haar cascade, HOG, and LBP, and deep learning—to detect faces, eyes, and smiles in video and webcam.
Compare face detection and face recognition, learning how detection locates faces with X and Y coordinates while recognition identifies individuals. Explore applications such as counting people, security access, and attendance.
Explore OpenCV and LIB, two leading computer vision libraries, and learn to implement facial detection and recognition with robust algorithms used in commercial applications.
Learn how images are represented as two-dimensional pixel matrices, with color images using three channels (red, green, blue) and grayscale images using a single channel, in 32 by 32 examples.
Discover the intuition behind Haarcascade cascade classifiers for face and object detection, learning how positive and negative images train boosted features, sliding windows, and cascading classifiers to reveal detections.
Learn to load an image in Google Colab, convert it to grayscale, and run a higher cascade classifier to compare four face detection techniques, preparing for faster processing.
Learn to implement face detection with a haarcascade cascade classifier in OpenCV by loading the trained xml, detecting faces in grayscale, and drawing bounding boxes on the color image.
Resize images for face detection using a scale factor and proportional resizing. Convert to grayscale and apply the cascade classifier to detect faces and reduce false positives.
Demonstrate tuning the Haarcascade scale factor and higher cascade parameters to improve face detection, showing how image size and face scale affect false positives and detection results.
Tune mean neighbors and bounding box counts to balance detection quality and misses in Haarcascade face detection. Adjust mean size and scale factor to reduce false positives.
Detect eyes in images using a higher cascade classifier with OpenCV, convert scenes to grayscale, and draw bounding boxes while tuning scale factor and mean neighbors to reduce false positives.
Learn to detect smiles, clocks, full body, and cars with dedicated cascade classifiers in Google Colab, and tune scale factor and mean neighbors for better accuracy.
Explore hog (histograms of oriented gradients) for face and object detection, including derivatives, gradient vectors, edge detection, and histogram-based classification with hands-on examples.
Demonstrate face detection with the hog algorithm integrated with svm using the leap library in Google Colab, loading and resizing images, running detections, and rendering bounding boxes for each face.
Explore upsampling in face detection with the lib library, showing how higher input resolution detects smaller faces and comparing the Haug algorithm with cascade classifiers.
Explore max-margin object detection (MMOD), a CNN-based face detector that delivers high accuracy, detects faces at various angles, and requires a GPU for practical speed.
Implement the mm0d algorithm again using the lib library to compare against the hawk algorithm, loading images, adjusting upsampling, and evaluating face confidence with gpu acceleration.
Explore the single shot multi box detector, which localizes and classifies objects in one forward pass and regresses bounding box positions with confidences, achieving high mAP on Pascal VOC datasets.
Learn to implement face detection with SSD using OpenCV DNN, loading Caffe prototxt and Caffe model, resizing to 300 by 300, applying mean subtraction, drawing bounding boxes with 0.5 confidence.
Finish implementing the ssd/asd based face detection function, loading an image, converting it to a blob, and generating bounding boxes with confidence scores while testing blob sizes 300 and 500.
Compare face detectors on a crowded image using haar cascade, hawk and svm, and sd. Tune parameters and image size to improve detections.
Detect faces in video frames using two techniques, higher cascades and SD, then resize the video, process frames, and create a new video with detections.
Implement video configurations and perform face detection using a higher cascade classifier, with grayscale processing and a video writer to output bounding boxes on each frame.
Process video frame by frame with a while loop, reading and resizing frames, while displaying only 20 frames in Google Colab and tracking per-frame processing time for future face detection.
Detect faces in video frames by resizing and converting to grayscale, applying a cascade-based detector, drawing bounding boxes, and saving the processed video, with tuning tips for reducing false positives.
Explore how to implement face detection in videos with deep learning, compare detections to the cascade classifier, draw bounding boxes at detected faces, and use a neural network.
Learn to install Anaconda and PyCharm on Windows, Mac, or Linux, with optional setup, create Python AI and data science environments, and use Google Colab for future face detection.
Implement webcam face detection in a conda-based python project using OpenCV and cascade classifiers, load the front-face cascade and sd weights, and evaluate detector performance while resizing video frames.
Explore the intuition behind eigenfaces, from ghost images and mean image to eigenvectors and pca, showing how dimensionality reduction enables face recognition by comparing feature distances.
Implement face detection as the first step in recognition using a caffe ssd detector, extract the face roi, and resize to 60 by 80 pixels for subsequent recognition.
Build a face dataset by extracting the region of interest, map images to subject IDs, train an OpenCV eigenfaces classifier, and save it as a yml file.
Apply the eigenfaces classifier to test images by detecting faces, predicting identities, and comparing results with expected outputs. Visualize results with confidence and prepare for the next accuracy evaluation.
Evaluate an eigenfaces implementation by testing the dataset, generating predictions and expected outputs, and computing accuracy. Visualize the results with a confusion matrix using seaborn.
We continue implementing eigenfaces-based face recognition, train the classifier with adjustable components and threshold, and test predictions to assess accuracy, preparing to cover fisher faces next.
Explore how Fisher faces use linear discriminant analysis to maximize class separation, reduce dimensionality, and improve recognition under varying lighting and expressions, with components and threshold settings.
Explore implementing Fisher faces for face recognition using train and test with cv2 fisher face recognizer, tune components and threshold, and evaluate results such as 80% accuracy.
Explore the LBPH algorithm for facial recognition, generating binary patterns from local neighborhoods and building histograms to compare face features in images using OpenCV.
Implement the LBPH face recognizer, train with faces, save and load the model, and test predictions against Fisher faces, achieving about 80% accuracy.
Adjust LBPH parameters for radius, neighbors, grid X and Y, and threshold to balance histogram detail, edge preservation, and recognition accuracy, and run tests to optimize results.
Learn how to implement lbp parameters for lbph recognition, adjust radius, neighbors, grid x and grid y, and threshold, and evaluate accuracy with results like 83%.
learn to implement face recognition with deep learning using dlib, detect 68 facial landmarks with a shape predictor, and compare results with traditional methods in Google Colab.
Learn to detect faces and 68 facial landmarks, extract face descriptors with the dlib face recognition model v1, and format a 128-number descriptor for each face in Colab.
Load the training set, read each image, and extract 128-value face descriptors to feed the convolutional neural network, then save them as numpy files for later use.
Learn to compute face similarity with Dlib by measuring distances between face descriptors and identify the closest match by the lowest distance in a 138-face dataset.
Apply a deep learning workflow with Dlib to predict faces in the testing set, using face detectors and descriptors, distance thresholds, and accuracy evaluation to benchmark performance.
Learn to build a face detection and recognition pipeline with dlib, using celeb data, resizing images, creating 128-value face descriptors, and evaluating with thresholds and accuracy.
Learn to set up the face recognition library in Python, encode faces, and compare encodings to verify identities using simple distance calculations in Google Colab.
Learn how to perform face recognition with multiple encodings using the face recognition library, including loading images, computing face encodings, detecting faces, comparing distances, and identifying best matches.
Encode all images from a path, filtering jpgs, to build face encodings and names; detect faces with cnn locations and match at 0.6 tolerance to return locations and names.
Test the recognize faces function with training encodings and test images, detect two faces, output locations, names, and confidence values, and visualize bounding boxes.
Apply the face detection and recognition algorithm to test images, using seven training images, read and display each image, and verify recognition results against labeled names to assess performance.
Learn face alignment using a five-point landmark detector, rotate faces upright, extract face chips, and draw facial elements and lines from detected landmarks.
Apply video face recognition using a preloaded encoding file in Google Colab, detect faces, draw bounding boxes, and visualize results while noting when faces aren’t in the dataset.
Capture faces with a webcam to build a personal dataset for face recognition using OpenCV and face recognition libraries, organize images by person, and prepare for model training.
Build a face recognition project using traditional OpenCV algorithms by creating a labeled image dataset, training Fisher faces and LBPH models, and testing recognition on webcam with various conditions.
Complete a deep learning based face detection and recognition project by encoding faces from two datasets, saving encodings, and recognizing faces in real-time video with bounding boxes and confidence.
Recap the course on face detection and recognition, outlining key differences, applications, detection algorithms like cascades, OpenCV, and a hands-on webcam project.
Explore artificial intelligence and data science with high-quality videos on machine learning, deep learning, computer vision, and more, plus flexible membership plans and certificates.
Facial detection is a subarea of Computer Vision that aims to detect people's faces in images or videos. Smartphones and digital cameras use these features to select people in a photo, usually placing a rectangle around the face. This type of application has gained considerable relevance in security systems, in which it is necessary to identify whether there are people in an environment for the alarm to be triggered. On the other hand, facial recognition aims to recognize people's faces and one example is security systems that can use these features to identify whether or not a person is present in an environment. It is important to highlight the differences between face detection and recognition techniques: while the first only indicates if a face is present, the second indicates whose face is detected.
In this step by step course using Python programming language, you are going to learn how to detect and recognize faces from images, videos and webcam from the most basic to the most advanced techniques! See below the topics that you be covered:
Detection of faces using Haarcascade, HOG (Histogram of Oriented Gradients), MMOD (Max-Margin Object Detection), and SSD (Single Shot Multibox Detector)
Detection of other objects, such as eyes, smiles, clocks, bodies, and cars
Recognition of faces using Eigenfaces, Fisherfaces, LBPH (Local Binary Patterns Histograms), and advanced Deep Learning techniques
How to compare the performance of the algorithms
Build your custom dataset capturing faces via webcam
All implementations will be done step by step using Google Colab online, so you do not need to worry about installing and configuring the tools on your own machine! More than 60 lectures and 8 hours of step by step videos!