The Point of This Project: With this type of tech you can understand the emotion of the person with just one look. Maybe in the future this tech will be the last of the lie machines. For this project and for now that is not possible but as this project improves these types of things can happen at the close future with more gpu power and more data.
Requirements: Python 3 or higher
Tensorflow library numpy library opencv-python library pandas library matploitlib library Pillow library scikit-learn library
Dev Note: I strongly recomend to you create a virtual enviroment for these libraries because they are very sensitive libraries and they can collide with the other libraries and easiliy stop working and trow warnings at your face.
--- If you want to set a venv python -m venv name_of_your_folder --- To activate write this name_of_your_folder\Scripts\activate --- Write this for exit from venv deactivate
pip install tensorflow opencv-python numpy pandas matplotlib scikit-learn Pillow
Testing Order of Project:
1- Find your dataset or you can use mine too. (I used FER-2013 from kaggle int this project) 2- You have to create a folder named "dataset" and split your data inside of this folder to two other folders which named "test" and "train" (FER-2013 dataset comes with this type of structer but if your dataset is not like this you can use an extra python script to split data.) 3- Once you have the folder structure run the dataset.py. 4- When your datas are ready run the train.py script. 5- When the training finishes you have to saw two .h5 files. 6- When you sa them you can run the test.py script and try your setting values.
Critical Note: The Values which i gave for model or the other things are not the most ideal.