data / README.md
Tracy André
updated
676811f
---
title: Analyse Adventices Agricoles CRA
emoji: 🌾
colorFrom: green
colorTo: blue
sdk: gradio
sdk_version: "4.31.0"
app_file: main.py
pinned: false
license: mit
---
# 🌾 Analyse des Adventices Agricoles - CRA Bretagne
Application Gradio pour analyser et prédire la pression des adventices dans les parcelles agricoles bretonnes, développée pour le hackathon CRA.
## 🏗️ Architecture du Projet
### Structure des fichiers
```
data/
├── __init__.py # Package Python
├── main.py # Point d'entrée principal
├── config.py # Configuration et constantes
├── data_loader.py # Chargement des données HuggingFace
├── analyzer.py # Analyse des données et calcul des risques
├── visualizations.py # Création des graphiques et visualisations
├── interface.py # Interface utilisateur Gradio
├── app.py # [LEGACY] Ancien fichier monolithique
├── app_simple.py # Version simplifiée
├── requirements.txt # Dépendances Python
├── sample_data.csv # Données d'exemple
└── results/ # Résultats d'analyse
├── risk_analysis.csv
└── risk_visualization.html
```
### Modules
#### 🔧 `config.py`
- Configuration centrale (tokens, URLs, constantes)
- Paramètres des graphiques et de l'interface
- Messages et textes de l'application
#### 📊 `data_loader.py`
- Classe `DataLoader` pour le chargement des données
- Gestion des fallbacks (repo HF → fichiers locaux)
- Nettoyage et validation des données
#### 🧮 `analyzer.py`
- Classe `AgricultureAnalyzer` pour l'analyse des données
- Calcul des statistiques et de l'IFT herbicides
- Classification des risques par parcelle
- Génération des recommandations
#### 📈 `visualizations.py`
- Classe `AgricultureVisualizer` pour les graphiques
- Visualisations Plotly interactives
- Graphiques de risques, cultures, distributions
#### 🖥️ `interface.py`
- Classe `AgricultureInterface` pour l'UI Gradio
- Organisation en onglets
- Gestion des interactions utilisateur
#### 🚀 `main.py`
- Point d'entrée principal
- Orchestration des composants
- Lancement de l'application
## 🎯 Objectifs
- Prédire la pression adventice sur chaque parcelle pour les 3 prochaines campagnes
- Identifier les parcelles à faible risque pour cultures sensibles (pois, haricot)
- Analyser l'IFT herbicides et proposer des alternatives techniques
## 📊 Fonctionnalités
- Analyse exploratoire des données agricoles
- Calcul de l'IFT herbicides approximatif
- Classification des parcelles par niveau de risque
- Visualisations interactives
- Recommandations pour cultures sensibles
## 🚀 Utilisation
### Lancement avec la nouvelle architecture
```bash
python main.py
```
### Lancement avec l'ancien fichier (rétrocompatibilité)
```bash
python app.py
```
## 🔄 Migration
L'ancienne version monolithique (`app.py`) reste disponible pour la rétrocompatibilité. La nouvelle architecture modulaire offre :
- **Meilleure maintenabilité** : Code séparé par responsabilité
- **Réutilisabilité** : Modules indépendants
- **Testabilité** : Tests unitaires plus faciles
- **Extensibilité** : Ajout de nouvelles fonctionnalités simplifié