PredireFruit360 / README.md
mahfouz28's picture
Update README.md
9a115a9 verified

A newer version of the Streamlit SDK is available: 1.44.1

Upgrade
metadata
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.