Downloads · 30 days
0
0% of all-time downloads
M03arie/plant_disease
plant_disease is a machine learning model from M03arie. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for keras.
Ton modèle CNN (bestcnnmodel.keras) est déjà inclus et testé dans ce dossier. Il ne manque que finalxgbmodel.json (le modèle XGBoost entraîné, sauvegardé via finalxgbmodel.savemodel(...) dans ton notebook) — bestxgbpa…
Downloads · 30 days
0
0% of all-time downloads
All-time downloads
31
Public
Repo size
82.3 MB
Likes
0
Public
Click a slice to open those files.
.json46.8 MB · 55%
From the Hugging Face model README
Ton modèle CNN (best_cnn_model.keras) est déjà inclus et testé dans ce
dossier. Il ne manque que final_xgb_model.json (le modèle XGBoost
entraîné, sauvegardé via final_xgb_model.save_model(...) dans ton
notebook) — best_xgb_params.json que tu m'as envoyé ne contient que les
hyperparamètres, pas le modèle.
Retrouve ce fichier (Colab, Drive, ou ton dossier API) et place-le dans
models/. Sans lui, seul le CNN sera utilisable dans le sélecteur.
plant_app/
├── app.py # interface Streamlit (point d'entrée)
├── config.py # ⚠️ À PERSONNALISER (modèles, classes, risques)
├── gradcam.py # explicabilité visuelle (Grad-CAM)
├── requirements.txt
└── models/ # mets ici tes fichiers .h5 / .keras
├── cnn_baseline.h5
└── mobilenetv2.h5
cd plant_app
python -m venv venv
source venv/bin/activate # Windows : venv\Scripts\activate
pip install -r requirements.txt
config.py UNIQUEMENT)Place tes fichiers .h5 / .keras dans le dossier models/, puis mets à jour
le dictionnaire MODELS avec :
model.summary())
→ nécessaire pour Grad-CAMTrès important : l'ordre doit être EXACTEMENT celui utilisé pendant l'entraînement. Dans ton notebook, récupère-le ainsi :
import json
class_names = list(train_generator.class_indices.keys())
json.dump(class_names, open("class_names.json", "w"))
Puis colle la liste dans CLASS_NAMES (ou charge le fichier JSON directement).
Le dictionnaire RISK_LEVELS associe des mots-clés (ex: "blight", "rust",
"healthy") à un niveau de risque + conseil. Adapte selon tes cultures.
streamlit run app.py
Une page va s'ouvrir dans le navigateur (par défaut http://localhost:8501).
plant_app/ sur un repo GitHub (inclure les modèles si
< 100 Mo, sinon utiliser Git LFS ou un stockage externe comme Google Drive
app.py, déploie.| Problème | Cause probable | Solution |
|---|---|---|
| Erreur Grad-CAM "layer not found" | mauvais nom de couche | vérifier avec model.summary() |
| Prédictions incohérentes | mauvais ordre dans CLASS_NAMES | vérifier class_indices du générateur d'entraînement |
| Modèle très lent à charger | gros fichier .h5 | c'est normal au premier chargement, ensuite mis en cache |
ModuleNotFoundError: cv2 | opencv mal installé | pip install opencv-python-headless |