Skip to content

hwyncho/FacialRecognition

Repository files navigation

FacialRecognition

Facial Expression Recognition with TensorFlow

Introduction

  • Facial Expression Recognition with Deep-Learning.
  • Implementation CNN(Convolutional Neural Network) with TensorFlow 1.4.

Codes

  • Test_Images : Directory of images for testing model.
  • Train_Images : Directory of images for traning neural-network.
  • collect_images.py : Collect face images from Bing and Google.
  • convert_images.py : Convert images files(*.jpg, *.jpeg, .png) to dataset file(.bin).
  • dataset.py : Dataset class for training or testing neural-network.
  • cnn.py : Create CNN and train them or classify images.

Example of Run Codes

  • Convert images to dataset
>>> import convert_images as ci

>>> ci.IMAGES_DIR = './Train_Images'
>>> ci.main('./train.bin', shuffle=True)
  • Train CNN and save model
>>> from cnn import Cnn

>>> my_cnn = Cnn()

>>> my_cnn.set_device('gpu')
>>> my_cnn.set_epoch(1000)
>>> my_cnn.set_batch_size(100)

>>> my_cnn.train('./train.bin', './CNN_Models/model')

>>> del my_cnn
  • Evaluate saved model
>>> from cnn import Cnn

>>> my_cnn = Cnn()

>>> my_cnn.set_device('gpu')
>>> my_cnn.set_batch_size(100)

>>> result = my_cnn.eval('./test.bin', './CNN_Models/model')
>>> print(result)

>>> del my_cnn
  • Classify label of new images
>>> from cnn import Cnn

>>> my_cnn = Cnn()

>>> my_cnn.set_device('gpu')

>>> result = my_cnn.query('./new_image.jpg', './CNN_Models/model')
>>> print(result)

>>> del my_cnn

Example Images

  • Angry

Angry_exmple

  • Disgust

Disgust_exmple

  • Fear

Fear_exmple

  • Happy

Happy_exmple

  • Sad

Sad_exmple

  • Surprise

Surprise_exmple

  • Neutral

Neutral_exmple

References

Releases

No releases published

Packages

No packages published

Languages