Spaces:
Sleeping
A newer version of the Streamlit SDK is available:
1.44.1
title: Predict Fruit 360
emoji: 🍎
colorFrom: red
colorTo: yellow
sdk: streamlit
app_file: app.py
pinned: false
sdk_version: 1.43.2
🍎 Predict Fruit 360 🍌🍊
Ce projet est une application Streamlit déployée sur Hugging Face Spaces qui permet de prédire le type de fruit à partir d'une image, en utilisant le modèle MobileNetV2 entraîné sur le dataset Fruits-360.
🚀 Démo
🔗 Accéder à l'application sur Hugging Face Spaces
📌 Fonctionnalités
- 📸 Upload d'une image : L'utilisateur peut importer une image de fruit.
- 🤖 Prédiction en temps réel : Le modèle MobileNetV2 identifie le fruit.
- 🎨 Interface intuitive : Basée sur Streamlit pour une utilisation simple et rapide.
🛠️ Installation locale
Si vous souhaitez exécuter le projet sur votre machine :
1️⃣ Cloner le dépôt
git clone https://huggingface.co/spaces/votre_nom_dutilisateur/PredictFruit360
cd PredictFruit360
## Structure du Projet
📂 fruits_classifier │── 📂 templates │ └── index.html │── 📂 models │ └── train.py # Contient le code d'entraînement et de sauvegarde du modèle │── 📂 app │ └── deploy.py # Contient l'API Flask pour le déploiement │── 📂 static # (Si besoin d'ajouter des fichiers CSS/JS) │── requirements.txt │── README.md
---
## Installation et Utilisation
### 1. Installation des dépendances
Avant de commencer, assurez-vous d'avoir **Python 3.8+** installé. Ensuite, installez les bibliothèques nécessaires :
```bash
pip install torch torchvision flask datasets pillow
2. Entraînement du Modèle
Le script models/train.py
charge le dataset, applique des transformations et entraîne un modèle MobileNetV2.
Lancer l'entraînement :
cd models
python train.py
Une fois l'entraînement terminé, le modèle est sauvegardé dans models/model_fruits360.pth
.
3. Déploiement de l'API Flask
Le script app/deploy.py
charge le modèle et crée une API Flask permettant de faire des prédictions.
Lancer l'API :
cd app
python deploy.py
L'API sera accessible sur http://127.0.0.1:5000/.
4. Utilisation de l'Interface Web
Accéder à l'URL http://127.0.0.1:5000/ et uploader une image pour obtenir la classe prédite.
Fonctionnalités
- Prétraitement des images : Redimensionnement, normalisation.
- Modèles utilisé : ResNet50, MobileNetV2, VGG16.
- Visualisation des performances : Matrice de confusion et rapport de classification.
- Déploiement facile : API Flask simple et rapide.
Auteur
Projet réalisé dans le cadre de la Licence 3 - Computer Vision au Dakar Institut of Technology.