Basic Concepts - genie97/SmartMirrorModule GitHub Wiki

Face Shape Analysis

Figure 4) shows the structure of a neural network for facial analysis. The above module consists of two input values and one hidden layer. The input features of the proposed neural network are 1) the angle of the jaw to the left and 2) the face up / down / left to right ratio.


It recognizes the user's face from the incoming image through the webcam and obtains the specific coordinate value. Then, the angle and the ratio calculated using the specific coordinate values obtained as shown in Fig. 3 are used as the input feature values. Through the neural network, the results are classified into four types: angular type, round type, long type, and other type.


Development Environment and Implementation

The development environment and programming language used to produce the proposed system are as follows. We used OpenCV for makeup guidelines and we worked with Python to show lipstick, ball touch, and other objects. The dlib library was used for face landmark extraction. We also implemented neural network using Keras classification in Python programming for facial analysis.


  • Tool
Name Version
Python v3.7.3
OpenCV v4.0.1
keras v2.0
  • Used Library
Library Version
dlib v19.17.0
argparse v3.2
imutil v0.3.2
os v1.2.1
face_util v3.4