Ce projet est une application similaire à Twitter intégrant une analyse d'expressions faciales en temps réel via une API IA.
- Front-end : React.js
- Back-end : Node.js/Express
- Base de données : MongoDB Atlas
- Module IA : Python avec un module CNN pour la reconnaissance d'expressions faciales
- back-end/ : Code source du serveur Node.js/Express
- front-end/ : Code source de l'application React
- IA/ : API Express connectée a un script python pour l'analyse des expressions faciales
-
Navigue dans le dossier
back-end:cd back-end -
Initialise le projet et installe les dépendances :
npm init -y npm install express mongoose dotenv cors bcrypt jsonwebtoken multer
-
Lance le serveur :
npm start
Note : Le backend doit être lancé dans l'environnement Python créé au préalable.
-
N'oubliez pas de créer un fichier
.envà la racine du projet avec les informations suivantes :MONGO_URI=mongodb+srv://boobacar5252:ddyug4yCMcO3T5N7@cluster0.kdc5xtk.mongodb.net/twitter_hackathon?retryWrites=true&w=majority SECRET_KEY=example
- Ouvre un nouveau terminal et navigue dans le dossier
front-end:cd front-end - Installe les dépendances :
npm install
- Lance l'application :
npm start
- Ouvre un nouveau terminal et navigue dans le dossier
IA:cd IA - Active l'environnement virtuel :
- Windows :
venv\Scripts\activate
- macOS/Linux :
source venv/bin/activate
- Windows :
- Lance l'API :
python app.py
- Assure-toi d'avoir les outils nécessaires installés : Node.js, npm, Python, etc.
- Utilise Git pour suivre les modifications :
git add . git commit -m "Message" git push
Ce module IA utilise un modèle de machine learning pré-entraîné pour détecter et analyser les expressions faciales à partir d'images. Il identifie 7 émotions : colère, dégoût, peur, joie, neutre, tristesse et surprise.
- Python 3.8+
- PIL (Pillow)
- PyTorch
- Transformers
- Navigue dans le dossier
IA - Active l'environnement virtuel :
venv\Scripts\activate # Pour Windows source venv/bin/activate # Pour macOS/Linux
- Installe les dépendances requises :
pip install torch pillow transformers
Pour analyser une expression faciale dans une image, utilisez la commande suivante :
Lancez le script dans le dossier IA detect.ipynb et souriez, vous êtes filmé.😁😁😁😁😁😁😒😒😒😒😒
Le script retourne une des émotions suivantes :
- anger (colère)
- disgust (dégoût)
- fear (peur)
- happy (joie)
- neutral (neutre)
- sad (tristesse)
- surprise
Le script main.py :
- Charge le modèle et le processeur depuis les fichiers pickle
- Reçoit le chemin d'une image en argument
- Prétraite l'image avec le processeur
- Effectue l'inférence pour détecter l'expression faciale
- Retourne l'émotion identifiée
Ce module est conçu pour fonctionner comme un composant de l'application Twitter-like développée pour le Hackathon 2025, en s'intégrant avec :
- Le backend Node.js/Express
- Le frontend React
Les fichiers modèle et processeur doivent être présents dans le même dossier que le script principal pour que l'application fonctionne correctement.
Note : Pas besoin d'installer Flask et Docker.