Welcome to EmotiScan, a fun web application that uses a Deep Learning model to make guesses on the emotions and expressions in a face.
EmotiScan brings the magic of machine learning to recognize emotions and expressions in pictures. With EmotiScan, you can upload an image and receive predictions about the emotions and facial action units displayed in the photo. It's an enjoyable way to explore the subtleties of facial expressions and understand the underlying emotions.
- Emotion Prediction: Detects primary emotions such as happiness, surprise, and negative sentiments.
- FACS Prediction: Identifies specific Facial Action Coding System (FACS) codes.
- User-Friendly Interface: Simple and intuitive design for easy interaction.
- Advanced Technology: Built with state-of-the-art deep learning models for accurate predictions.
- Upload Your Image: Simply upload a photo of a face.
- Magic Happens: The pre-trained model analyzes the facial features.
- Get Results: You'll receive a prediction of the emotion and FACS codes associated with the facial expressions in the image.
EmotiScan is strictly designed for entertainment and educational purposes only. The predictions provided by the application are not intended for use in critical decision-making processes. EmotiScan's results should not be considered definitive or used for any professional or diagnostic purposes.
The following video illustrates the real-time working and aesthetics of the EmotiScan App
EmotiScanDemo.mov
To set up the EmotiScan App on your local machine, follow these steps:
-
Clone the repository:
git clone https://github.com/Git-With-Chris/EmotiScan.git
-
Change directory
cd EmotiScan
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the application:
streamlit run app.py
.
|-- README.md # Main documentation for the EmotiScan project.
|-- app.py # Main application script containing the Streamlit app setup.
|-- images
| |-- AboutPage.png
| |-- Data.png
| |-- Distb.png
| |-- EDAPicture.png
| |-- EmotionCM.png
| |-- FacsCM.png
| |-- HomePage.png
| `-- LearningCurves.png
|-- models
| `-- emotiscan_model.h5 # Trained deep learning model file used by EmotiScan to predict emotions and FACS codes (!!Currently not public!!)
|-- notebooks
| |-- EDA.ipynb # Notebook used for Exploratory Data Analysis (EDA).
| `-- Modelling.ipynb # Notebook containing the model development process, including model training, evaluation, and optimization.
|-- scripts
| |-- dataloader.py # Custom Data Loader: Python script for loading and preprocessing data before model training.
| |-- plotter.py # Utility script for generating plots and visualizations used in data exploration and model evaluation.
| `-- predictions.py # Script to make predictions using the trained model on new data.
|-- LICENSE.txt
`-- requirements.txt
5 directories, 18 files
This project is licensed under the MIT License - see the LICENSE file for details.