Around age 17, I attempted to come up with a way to accurately detect the shape of a person’s face. Right now beauty experts use loose guidelines such as the width of the forehead, or the sharpness of the chin to roughly classify a face shape. Here is my process of determining the shape of a person’s face.
Principle
The human face can be broadly classified into 4 major types. Ofcourse there are plenty of variations because each person is unique. The major face shape categories are:
- Square
- Heart
- Oval
- Round
Method
Create a model which is trained using celebrity images for each face shape. These will act as benchmarks.
Square Face:
- Billie Piper
- Demi Moore
- Jennifer Aniston
- Katie Holmes
- Kelly Osborne
- Renee Zellweger
- Sandra Bullock
Heart Face:
- Cheryl Cole
- Eva Longoria-Parker
- Gwyneth Paltrow
- Mary-Kate Olsen
- Naomi Campbell
- Nicole Richie
- Reese Witherspoon
Oval Face:
- Cameron Diaz
- Charlize Theron
- Cindy Crawford
- Courtney Cox
- Elle Macpherson
- Julia Roberts
- Rihanna
Round Face:
- Drew Barrymore
- Ginnifer Goodwin
- Hayden Panettiere
- Isla Fisher
- Kate Bosworth
- Mila Kunis
Finally, feed the user’s image into the newly trained model. The shape with the highest probability is the user’s face shape.
Implementing Deep Learning
Neural Network Used: CNN
Neurons in output layer: 4
Test
The demo app can be found on github:
https://github.com/VinitaSilaparasetty/face_shape_analyzer
Dataset
To learn more about the dataset, click the button below:
References:
Square face shape:
Heart face shape:
Oval face shape:
Round face shape: