No account yet ?
Viola Jones algorithm and Haar cascade classifier.
Viola-Jones and Micheal Jones object detection originated in 2001 as a machine learning approach to detecting almost any object.
How exactly does facial recognition work to classify faces, given the large number of input features and the striking similarities between humans?
Haar classifiers were used in the first real-time face detector.
The algorithms that run the Haar cascade classifier require lots of images of faces and non-face images to train the classifier, like other machine learning models.
The first step is to collect features from Haar.
A Haar function essentially consists of calculations performed on rectangular regions adjacent to a specific location within a detection window.
The calculation consists of adding the intensities of the pixels in each region and calculating the differences between the sums.
These characteristics can be difficult to determine for a large image.
This is where integral images come in because the number of operations is reduced by using the integral image.
What is an Integral Image?
An integral image is a representation in the form of a digital image and an algorithm, allowing to quickly calculate sums of values in rectangular areas.
Creation of integral images.
Integral images essentially speed up the calculation of Haar features.
Instead of calculating at each pixel, it creates sub-rectangles and also creates array references for each of those sub-rectangles which are then used to calculate the Haar features.
Boost and AdaBoost algorithm.
Reinforcement refers to any Together method that can combine multiple weak learners into one strong learner.
The general idea of most amplification methods is to train the predictors sequentially, each trying to correct its predecessor.
AdaBoost, also known as Adaptive Boosting, is one of the most widely used Boosting techniques.
AdaBoost:
AdaBoost is a method for a new predictor to correct its predecessor by paying more attention to training instances that the predecessor under-adjusted.
This results in the creation of new predictors focusing more and more on the difficult cases.
commonly referred to as the adaptive boost.
For example, to create an Adaptive Boosting classifier, a first base classifier such as a decision tree or an SVM classifier is trained and used to make predictions over the entire training.
The relative weights of misclassified predictions are changed and increased to put more emphasis on those predictions while making the next predictor.
A second classifier is trained using the updated weights which again makes predictions over the entire training, the weights are updated repeatedly.
After all predictions are trained, the ensemble method makes predictions very similar to boosting, except that the predictors have different weights based on their overall accuracy over the entire weighted training.
The disadvantage of this type of algorithm is that it cannot be parallelized which increases the time required.
So, after running AdaBoost on all features, we are left with the most relevant features required for detection.
Therefore, it reduces the computation time because we don't have to loop through all the features and it also reduces the computation time because we don't have to loop through all the features, this is much more efficient.
Boosting.
Boosting is an area of machine learning. This is a principle that brings together many algorithms that rely on sets of binary classifiers: boosting optimizes their performance.
HAARPHP - GitHub
Welcome, my name is Eric Soupet and I am the administrator of the site elodees.com. elodees.com is a state of the art of Artificial Intelligence and aims to be collaborative, you can now offer content such as articles, events, tutorials, ... so don't hesitate !
Platform images credit : Pixabay - Pixabay License | Pexels - Pexels License