Inspiration

The idea to do a facial recognition program stemmed from a desire to explore the field of machine learning more. As mechanical engineers, we don't have as much exposure to this kind of thing so this was our chance. When our friend, Kyle Choi, takes off his glasses, he looks quite similar to his twin brother, Matthew Choi. When we first met them last year, we would often get them mixed up had we not come up with a little saying, "Kyle has 'klasses'." That helped us identify the two a little bit easier. So, Matthew and Kyle were the inspiration for this program.

What it does

The goal of our program was to be able to distinguish between the two twins using neural networks and machine learning in real-time. We took over a hundred pictures of each twin yesterday and used them to train on the final layer of Google's Inception model. The idea was to take a video, analyze each frame to identify the twins, crop their faces, and test the convolutional neural network program to see if it could correctly identify the twin. At this date and time, we have a couple of programs done, but not the final project as we hoped. We have a trained neural network and a program that takes every frame of a video and identifies the twins and then crops their faces out.

How we built it

The machine learning was coded in python and with the assistance of Google’s Inception model to expedite the training process, given the limited time. We used MATLAB to crop out the faces of the twins in every frame of a video that we had prerecorded.

Challenges we ran into

Our initial plan was to use raspberry pi and a camera module to identify the twins in real time, however, I hadn't used raspberry pi before and was not able to get it up and running. As a result, we switched over to MATLAB, a programming language that I am more familiar with.

Time was definitely an issue. We have most of the components of the project, but didn't have time to sow them all together.

On top of that, as mechanical engineers, coding isn't a huge part of our coursework. Chirawat was more experience with the subject at hand because of research and other experiences. The extent of my programming experience was a MATLAB class I had taken in the Fall of 2016 and an introduction of C++ class I took in winter 2017.

Accomplishments that we're proud of

We're proud to have a product.

What we learned

We learned a lot about machine learning and image processing and computer vision. I personally learned quite a lot about MATLAB and its real-life applications.

What's next for Which Choi's?

To combine everything that we made together to get one final product rather than several small products. We definitely want to finish this project to be able to do the facial recognition in real-time, even over Skype or some other web chatting service.

Built With

Share this project:

Updates