Getting into Deep Learning, what is Computer Vision? Let’s create a face recognition app!
By: Viridiana Romero Martinez
Tags: Artificial Intelligence, Machine Learning, Computer Vision, Opencv

Star Wars + Han Solo + Artificial Intelligence!

Recently, I read on an article that someone used Artificial Intelligence to insert Harrison Ford into the movie: “Solo: A Star Wars Story”. It uses deep learning artificial intelligence, that analyzes a large collection of photos of a given person, in this case, Harrison Ford, then creates a database of those images in multiple positions and poses. This technology then uses that database to intelligently perform an automatic face replacement on a source clip. Hello New World!

What started as an interest in learning Data Science, Python libraries and its algorithms to solve business problems, became a desire to understand Machine Learning, Computer Vision and recognize faces in images!

Everytime I read an article about Data Science, saw these new words to me. So I decided to start this challenge of learning more about this amazing world of Artificial Intelligence.

But what is Machine Learning?

We may not see it, but Machine Learning is in our phones, in the products we use today. Tagging people in pictures sounds familiar? Video recommendation systems? Big companies like Netflix and Facebook are using this technology in all their products. Machine Learning consists in a set of algorithms that parse data, learn from them, and then apply this knowledge to make intelligent decisions. You feed the computer with a set of rules and tasks, then it will find a way to complete those tasks.

On the other hand, Computer Vision is an Artificial Intelligence that allows machines to capture, process and analyze real world images and videos to extract meaningful and contextual information from the physical world.

Nowadays, Computer Vision is used in different fields such healthcare, agriculture, banking, automotive and industrial, among others. Computer Vision technology is helping healthcare professionals to accurately classify conditions or illnesses that may potentially save patients’ lives by reducing or eliminating inaccurate diagnoses and incorrect treatment. Farmers are beginning to adopt computer vision technology to monitor the health of crops. Banks are using image recognition applications that apply machine learning to classify, extract data, and authenticate documents.

Last night I read an article about Artificial Intelligence and it said that a school in Hangzhou, China, is using facial recognition to monitor the behavior of their students. This technology classifies the students based on their range of emotions, from antipathy to happy. The system also cross-checks the faces of all students against the school database to mark the attendance and has the ability to predict if a student is feeling sick.

So, after trying for hours, getting the right python libraries, installing the video codecs and getting some videos, I will show you the results of running face recognition on a video file.

I used a video of Brad Pitt and Jennifer Aniston. Got a picture of each one to teach the machine how to recognize them in the video:

What an incredible result! Never imagined machines could learn to do this, but the reality of Computer Vision and AI today is that machines need human help for better results.