AgriScan EfficientNetB0 β€” Crop and Plant Disease Classifiers

AgriScan is an agricultural intelligence project developing computer-vision tools to support crop identification and plant-health screening.

This repository is intended to contain two separately trained EfficientNetB0 models:

  1. Crop classifier β€” predicts whether an image belongs to maize, potato, or tomato.
  2. Disease classifier β€” predicts one of 17 crop-condition classes across those crops.

Status: Research and pilot prototype. Add measured evaluation results after the training notebook has completed successfully.

Repository contents

Expected files:

.
β”œβ”€β”€ README.md
β”œβ”€β”€ agriscan_efficientnet_crop.keras
β”œβ”€β”€ agriscan_efficientnet_disease.keras
β”œβ”€β”€ crop_names.json
β”œβ”€β”€ class_names.json
β”œβ”€β”€ evaluation_metrics.json
β”œβ”€β”€ crop_classification_report.csv
β”œβ”€β”€ disease_classification_report.csv
β”œβ”€β”€ crop_confusion_matrix.csv
└── disease_confusion_matrix.csv

Upload only the files that have actually been generated. Evaluation reports and metrics should be added after the training and evaluation cells finish.

Model details

Property Crop classifier Disease classifier
Architecture EfficientNetB0 EfficientNetB0
Task Crop classification Crop-condition classification
Number of output classes 3 17
Input RGB image RGB image
Input size 224 Γ— 224 pixels 224 Γ— 224 pixels
Model format Keras .keras Keras .keras

The training workflow uses transfer learning with an ImageNet-pretrained EfficientNetB0 backbone, first training the classification head and then fine-tuning upper backbone layers.

Crop classes

  • Maize
  • Potato
  • Tomato

Disease classes

The 17 output labels are defined in class_names.json. The JSON order is significant because it maps each output index to its label. Use the exact file produced by the training notebook; do not manually reorder the labels.

Dataset and evaluation

The training workflow uses the mohanty/PlantVillage dataset and its splits/color_train.txt and splits/color_test.txt manifests, filtered to maize, potato, and tomato classes.

The training partition is divided into training and validation subsets. The source test partition is reserved for final evaluation.

No performance metrics are stated here because the EfficientNetB0 training run must complete before results can be reported. After evaluation, update this section using the generated evaluation_metrics.json and classification reports. Report the test-set size and metrics exactly as measured; do not use training or validation scores as test scores.

Input preprocessing

  • Convert the image to RGB.
  • Resize to 224 Γ— 224 pixels.
  • Supply pixel values in the range expected by the saved model.
  • The Keras EfficientNetB0 backbone includes input rescaling. Do not apply MobileNetV2-specific Rescaling(1/127.5, offset=-1) preprocessing unless the model architecture is deliberately changed and retrained.

Use the model's actual training/inference pipeline when deploying it.

Recommended inference flow

  1. Run the crop classifier.
  2. Run the disease classifier.
  3. Read the predicted labels using crop_names.json and class_names.json.
  4. Compare the crop predicted by the crop classifier with the crop implied by the disease-class label.
  5. If the two classifiers disagree, or confidence is low, return an uncertain/review result instead of presenting a definitive diagnosis.

The two classifiers are independent models. A downstream application must implement the routing, confidence policy, and disagreement handling.

Intended use

This model is intended for research, prototyping, and controlled pilot evaluation of crop classification and plant-disease image classification for maize, potato, and tomato.

Limitations and responsible use

  • This is a closed-set classifier. It is not a general plant detector and may assign an unsupported label to non-plant images.
  • It predicts only among the classes represented in the training labels; unknown diseases and other crops are not supported.
  • PlantVillage images may differ from farmer field photographs in lighting, backgrounds, camera quality, geography, crop varieties, and disease severity.
  • A high softmax score is not a guarantee of correctness and should not be treated as calibrated probability without further calibration work.
  • Predictions are not a substitute for expert agricultural advice or laboratory diagnosis.
  • Validate on representative real-world field images before operational deployment.

Citation and attribution

The dataset used by the training workflow is available as mohanty/PlantVillage. Review the dataset card and its terms before redistributing derived assets.

Contact and project

Project: AgriScan, an agricultural intelligence initiative associated with CDSA.

For deployment, document the model version, training date, dataset version, evaluation results, and any changes to preprocessing or class mappings.

Downloads last month
29
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Dataset used to train Vernard/AgriScan_EfficientNetB0_Two_Classifier_Training