Facial Expression Recognition with TensorFlow
- Facial Expression Recognition with Deep-Learning.
- Implementation CNN(Convolutional Neural Network) with TensorFlow 1.4.
- 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.
- 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
- Angry
- Disgust
- Fear
- Happy
- Sad
- Surprise
- Neutral