Logo Lanfrica

tenlisboa/pest_detection_cnn

Domaine:

agriculture

Type de record:

model
Créateur:
ten
Hôte:
This is a transfer learning fine tunning from a Kaggle dataset of farms from Africa, that identifies pests of some kinds of cultives. # 🌾 Farm — Crop Pest & Disease Detection Classificador de pragas e doenças em plantações usando **transfer learning com MobileNetV2**, exportado para **TFLite** com quantização INT8 para inferência em dispositivos móveis. ## Classes (22) | Cultura | Classes | |----------|---------| | Cashew | anthracnose, gumosis, healthy, leaf miner, red rust | | Cassava | bacterial blight, brown spot, green mite, healthy, mosaic | | Maize | fall armyworm, grasshoper, healthy, leaf beetle, leaf blight, leaf spot, streak virus | | Tomato | healthy, leaf blight, leaf curl, septoria leaf spot, verticulium wilt | ## Setup rápido ```bash # Instalar dependências (requer uv — docs.astral.sh) uv sync # Baixar o dataset (~1.3 GB) ./download_dataset.sh ``` ## Dataset O dataset **não** está no repositório (está no `.gitignore`). Use qualquer uma das opções abaixo: ### Opção 1 — Script automatizado (recomendado) ```bash ./download_dataset.sh ``` Requer Kaggle CLI e credenciais em `~/.kaggle/kaggle.json`. ### Opção 2 — Kaggle CLI manual ```bash pip install kaggle kaggle datasets download -d nirmalsankalana/crop-pest-and-disease-detection unzip crop-pest-and-disease-detection.zip -d dataset # ajuste o caminho se necessário — as pastas de classe devem ficar em dataset/ ``` ### Opção 3 — Download pelo navegador 1. Acesse kaggle.com 2. Clique em **Download** 3. Extraia o `.zip` e mova as pastas de classes para `dataset/` A estrutura esperada é: ``` dataset/ ├── Cashew anthracnose/ ├── Cashew gumosis/ ├── ... └── Tomato verticulium wilt/ ``` ## Treinamento O notebook `main.ipynb` executa: 1. **Fase 1** — Treina apenas a cabeça de classificação (base MobileNetV2 congelada, até 50 epochs com early stopping) 2. **Fase 2** — Fine-tuning das camadas 115+ do MobileNetV2 (learning rate menor, até 15 epochs adicionais) 3. **Exportação** — Converte o modelo final para TFLite com quantização INT8 Che …