Keras is an open-source neural-network library written in Python. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, Theano, or PlaidML. Designed to enable fast experimentation with deep neural networks, it focuses on being user-friendly, modular, and extensible.
OpenCV is a cross-platform library using which we can develop real-time computer vision applications. It mainly focuses on image processing, video capture and analysis including features like face detection and object detection.
Pandas is the most popular python library that is used for data manipulation and data analysis.n particular, it offers data structures and operations for manipulating numerical tables and time series.
NumPy is a general-purpose array-processing package. It provides a high-performance multidimensional array object, and tools for working with these arrays.
In this project used FER2013 dataset and created own face dataset using Cascade Classifier / Violes-Jones method.Collective of 36,210 samples.
In FER2013 dataset there are totally 7 emotions and in own face dataset 6 emotions. So, removed 'disgust' emotion from FER2013.Finally having 35,720 samples
In Test and Train, split dataset into 90:10 for Training and Testing respectively.
In keras model, use Convolutional Neural Network (CNN) in which it can take in an input image, assign importance (learnable weights and biases) to various aspects/objects in the image and be able to differentiate one from the other. Tried different module of different filter size to attain maximum accuracy.