Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/prem-ium/metahuman-emotion-recognition

Emotionally responsive Virtual Metahuman CV with Real-Time User Facial Emotion Detection (Unreal Engine 5).
https://github.com/prem-ium/metahuman-emotion-recognition

computer-vision emotion emotion-classification emotion-detection emotion-recognition emotions facial-expression-recognition machine-learning metahuman metahumans opencv opencv-python unreal-engine unreal-engine-4 unreal-engine-5 virtual-human-agent virtual-humans

Last synced: about 2 months ago
JSON representation

Emotionally responsive Virtual Metahuman CV with Real-Time User Facial Emotion Detection (Unreal Engine 5).

Awesome Lists containing this project

README

        

πŸ§ πŸ’» Real-Time Emotion Recognition Metahuman πŸ§ πŸ’»

Creating real-time facial and emotion recognition software to pair with Unreal Engine 5 Metahuman to predict and mimic user emotions.







Github Sponsor

Our objective is to develop a 3D Virtual Human (3DVH) prototype that can mirror a user’s emotional reaction. The user emotional reaction is captured using a computer vision-based technique and a camera system. The virtual human will mimic user emotions in real-time.

# Contributors πŸŽ“

- **Python Scripting:** Prem Patel ([@Prem-ium](https://github.com/Prem-ium))
- **Unreal Engine Integration:** Gabe Vindas ([@GabeV95](https://github.com/GabeV95)) & Dustin Lynn ([@Onemorehell](https://github.com/Onemorehell))
- **Emotion Animations in Unreal Engine:** Matthew Goetz

## Supported Emotions πŸ˜ƒ:
- Anger 😑
- Fear 😨
- Happy πŸ˜„
- Neutral 😐
- Sad 😒
- Surprised 😲

## Our Virtual Humans 🎭
![image](https://user-images.githubusercontent.com/80719066/229881331-faa04b08-8524-4901-9398-e8b927542c98.png)
They're terrifying, we know.

## Example Results 🎯
![image](https://user-images.githubusercontent.com/80719066/229880499-9b973ded-d2ea-453f-8590-f873696ad039.png)
(Showcasing Happy & Surprised)

## Features πŸ”‘

- Emotion Recognition
- Age & Gender Prediction
- Enviornmental Variables Customization
- Headless mode
- Flexible Emotion Selection: Choose between the most common emotion every X captured emotions or the latest emotion.

## Installation Process & Setup Process βš™οΈοΈ
Run locally:
1. Clone this repository, cd into it, and install dependancies:
```sh
git clone https://github.com/Prem-ium/Metahuman-Emotion-Recognition.git
cd EmotionDetection
pip install -r requirements.txt
```
2. Configure your `.env` file (See below and example for options)
3. Run the main script:
```sh
python emotional-detection-main.py
```
4. Open Unreal Engine Project & Run the Blueprint
5. Click the button to trigger the text reader to process the most common emotion recorded.
6. The Metahuman mimics the user's most common emotion.
7. Repeat Steps 5-6 until desired termination

### Enviornmental Variables πŸ› οΈ
Configure your variables in a .env file within the same directory. All .env variables are optional and have default values if not specified.

| Variable | Description | Default Value |
|--------------|--------------------------------------------------------------------|---------------|
| HEADLESS | True or False. Whether to open a GUI for testing webcam accuracy. | True |
| PRODUCTION | True or False. Whether the program is running in Unreal Engine. | False |
| DELAY | Integer value of how many seconds the program will wait before starting the next iteration | - |
| FILE_PATH | Path of directory containing the model and weights | - |
| WEIGHTS | Name of the model being used | - |

## Need Help? πŸ€”
I regret to inform you that I'm currently unable to respond to any issues for this repository. I have disabled the ability to start an issue in this repository. Please refrain from contacting me regarding any issues at this time.

## Donations 🎁

GitHub Sponsor


Buy Me A Coffee

## License

[MIT](https://choosealicense.com/licenses/mit/)