File size: 3,283 Bytes
55bd7b1 c970726 55bd7b1 8fbcfd8 c7f3561 8fbcfd8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
---
title: Emotion Count People Analysis
emoji: 📊
colorFrom: purple
colorTo: gray
sdk: streamlit
sdk_version: 1.25.0
app_file: app.py
pinned: false
---
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
# Analyse d'Affluence et d'Émotions des Personnes
Bienvenue sur le projet "Emotion Count People Analysis", une application avancée qui combine l'analyse d'image, la détection d'émotions, et le comptage de personnes.
Ce projet a été conçu pour aborder des défis pratiques tels que l'observation de l'affluence lors d'événements et l'analyse des émotions des participants, le tout dans une interface utilisateur intuitive grâce à Streamlit et déployé sur Hugging Face Spaces.
## Fonctionnalités Clés
- **Génération de Légendes** : Fournit une description contextuelle de l'image en utilisant un modèle pré-entraîné de Hugging Face (`Salesforce/blip-image-captioning-large`).
- **Classification des Émotions** : Analyse les émotions des visages détectés dans l'image grâce à un modèle de classification des émotions (`RickyIG/emotion_face_image_classification_v3`).
- **Comptage de Personnes** : Estime le nombre de personnes présentes dans l'image en utilisant un modèle local (`model_sh_B.pth avec vgg19`), spécialement adapté et optimisé pour cette tâche.


## Défis et Solutions
Durant le développement, nous avons rencontré des défis spécifiques liés aux images prises par des mobiles, notamment des résolutions élevées et des orientations variées. Pour y remédier, nous avons implémenté :
- **Correction d'Orientation** : Utilise les métadonnées EXIF pour ajuster automatiquement l'orientation des images, garantissant que les images sont analysées dans le bon sens.
- **Redimensionnement d'Image** : Redimensionne les images à une taille standard de 224x224 pixels, optimisant ainsi le traitement par notre modèle local `vgg19`.
## Processus de Normalisation
Afin d'assurer une analyse précise, chaque pixel de l'image subit une normalisation basée sur la formule :

où `pixel_value` est la valeur du pixel dans le canal concerné, `mean_channel` est la valeur moyenne à soustraire, et `std_channel` est l'écart-type pour la normalisation.
## Améliorations Futures
Bien que notre modèle de comptage de personnes performe bien, une formation supplémentaire avec des ensembles de données plus vastes et variés,
tels que [ce dataset Kaggle pour la classification des émotions](https://www.kaggle.com/code/drcapa/facial-expression-eda-cnn/notebook), pourrait encore améliorer sa précision et sa robustesse.
## Déploiement sur Hugging Face Spaces
Ce projet est déployé sur Hugging Face Spaces, utilisant le matériel "CPU upgrade" avec 8vCPU et 32GB RAM pour assurer une performance optimale même pour les images à haute résolution.
## Installation
Pour tester ce projet localement, assurez-vous d'avoir les dépendances suivantes installées (regarder requirement)
|