Overlaying a facemask in a live video
OpenCV provides a nice face detection framework. We just need to load the cascade file and use it to detect the faces in an image. When we capture a video stream from the webcam, we can overlay funny masks on top of our faces. It will look something like this:
Let's take a look at the main parts of the code to see how to overlay the preceding mask on top of the face in the input video stream. The complete code is available in the downloadable code bundle provided along with this book:
int main(int argc, char* argv[]) { string faceCascadeName = argv[1]; // Variable declarations and initializations // Iterate until the user presses the Esc key while(true) { // Capture the current frame cap >> frame; // Resize the frame resize(frame, frame, Size(), scalingFactor, scalingFactor, INTER_AREA); // Convert to grayscale cvtColor(frame, frameGray, CV_BGR2GRAY);...