/ Модель

Характеристики

Параметры
28,3 млн
Лицензия
CC BY-SA 4.0
Архитектура
dinov2 · dense
Базовая модель
dinov2-small
Библиотека
transformers
Опубликована
9 окт 2026

plant-disease-dinov2-small

Классификация изображенийИзображение → label

Классификатор на основе DINOv2 распознаёт 38 классов болезней и здоровых состояний листьев 14 культур по фотографиям.

5 111скачиваний за 30 дней0лайковвеса обновлены9 окт 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Plant Disease Classifier — модель классификации изображений листьев, разработанная Родайной Эмад Мохамед для проекта BloomTech в области умного сельского хозяйства. Она дообучает замороженную основу facebook/dinov2-small: признаки DINOv2 обрабатываются линейным классификатором, который различает 38 сочетаний культур и состояний — 26 болезней и 12 здоровых классов для 14 культур.

Модель предназначена для предварительного распознавания болезней по фотографии отдельного листа. На тестовой выборке PlantVillage с разделением по физическим листьям точность составила 98,9%, а macro F1 — 98,5%. Эти результаты относятся к лабораторным фотографиям на простом фоне; в полевых условиях качество может заметно снизиться. Классификатор всегда выбирает один из 38 классов, поэтому результат для нерелевантного изображения сам по себе не подтверждает, что на фото лист.

Модель содержит 28,3 млн параметров и доступна в форматах Safetensors и ONNX. Для браузерной версии приведён также квантованный ONNX-вариант int8. Лицензия — CC BY-SA 4.0. Это инструмент предварительного скрининга, а не замена консультации агронома.

Сценарии применения

  • предварительное распознавание болезней на фотографии отдельного листа
  • проверка, выглядит ли лист здоровым
  • ранжирование вероятных болезней листа по оценкам модели
  • создание прототипа сканера болезней растений для сельского хозяйства

Ограничения

Обучение и оценка основаны на лабораторных изображениях отдельных листьев PlantVillage, поэтому точность на полевых фотографиях с фоном, тенями или несколькими листьями может быть значительно ниже. Классификатор всегда выбирает один из 38 классов и предназначен только для предварительного скрининга, а не для постановки диагноза.

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Plant Disease Classifier (DINOv2-small + linear head)

Identifies 38 crop–condition classes (26 diseases and 12 healthy classes across 14 crops) from a photo of a single leaf. Built as the open disease-scanning model for BloomTech, my AI + IoT smart-agriculture graduation project.

Try it: Plant Disease Scanner Space

Metric (held-out test set, 10,862 photos)Value
Accuracy on leaves never seen in training98.9%
Macro F1 on leaves never seen in training98.5%
Accuracy with a naive photo-level random split (for comparison)99.1%

Why "leaves never seen in training" matters

PlantVillage contains several photos of the same physical leaf. If photos are split randomly, near-duplicates of a test leaf end up in training, which inflates test accuracy. The dataset authors' leaf-map.json links 40,490 photos to 7,524 physical leaves. I split the data so that every photo of a given leaf lands on only one side (stratified, leaf-grouped 80/20 split), and asserted that no leaf crosses the split. For this model the inflation from a naive split is small (99.1% vs 98.9%), but the leaf-level number is the one to trust. The remaining 13,815 photos have no leaf mapping and are split photo by photo.

Usage

from transformers import pipeline

classifier = pipeline("image-classification", model="rodynaemad/plant-disease-dinov2-small")
print(classifier("leaf.jpg", top_k=3))
# [{'label': 'Tomato___Late_blight', 'score': 0.999}, ...]

In the browser (ONNX)

onnx/model_with_features.onnx (88 MB, fp32) and onnx/model_with_features_quantized.onnx (24 MB, int8) take pixel_values (1×3×224×224, ImageNet-normalized) and return logits and the 768-d features used for the out-of-distribution check. The fp32 export matches PyTorch exactly. The int8 copy, which powers the Space, scores 98.7% accuracy (98.1% macro F1) on the full leaf-level test set. Example with onnxruntime-web in the Space's index.html.

How it was trained

  • Backbone: facebook/dinov2-small, frozen. Features are the concatenation of the CLS token and the mean patch token (768 dimensions), exactly what Dinov2ForImageClassification feeds its classifier.
  • Head: multinomial logistic regression on standardized features, with the standardization folded into the final linear layer. The regularization strength (C = 0.1) was chosen on a leaf-grouped validation split carved out of the training set; validation accuracy was 98.4–98.6% across C ∈ {0.1, 0.3, 1, 3}.
  • Data: all 54,305 colour images of PlantVillage (43,443 train / 10,862 test).
  • Check: the exported Transformers model reproduces the trained classifier's predictions on 100% of 200 sampled test images.

Per-class F1 on unseen leaves

27 of 38 classes reach F1 ≥ 0.99. Weakest classes first:

CropConditionF1
Corn (maize)Cercospora leaf spot Gray leaf spot0.900
Potatohealthy0.915
TomatoEarly blight0.924
Corn (maize)Northern Leaf Blight0.949
TomatoTarget Spot0.958
TomatoLate blight0.966
TomatoBacterial spot0.967
TomatoSpider mites Two-spotted spider mite0.972
PotatoLate blight0.972
TomatoLeaf Mold0.974
TomatoSeptoria leaf spot0.984
Tomatohealthy0.991
TomatoTomato Yellow Leaf Curl Virus0.991
AppleApple scab0.992
GrapeBlack rot0.994
GrapeEsca (Black Measles)0.995
Corn (maize)Common rust0.996
Pepper, bellBacterial spot0.997
PotatoEarly blight0.998
StrawberryLeaf scorch0.998
Corn (maize)healthy0.998
SquashPowdery mildew0.999
PeachBacterial spot0.999
Soybeanhealthy1.000
AppleBlack rot1.000
AppleCedar apple rust1.000
Applehealthy1.000
Blueberryhealthy1.000
Cherry (including sour)Powdery mildew1.000
Cherry (including sour)healthy1.000
GrapeLeaf blight (Isariopsis Leaf Spot)1.000
Grapehealthy1.000
OrangeHaunglongbing (Citrus greening)1.000
Peachhealthy1.000
Pepper, bellhealthy1.000
Raspberryhealthy1.000
Strawberryhealthy1.000
TomatoTomato mosaic virus1.000

The main confusion is between the two corn leaf-blight diseases (gray leaf spot vs. northern leaf blight), which look alike. Potato healthy has only 152 photos in the whole dataset.

Limitations

  • Lab photos only. PlantVillage images show a single detached leaf on a plain background. Accuracy on field photos with clutter, multiple leaves, shadows or different cameras will be substantially lower. Do not read 98.9% as field performance.
  • Closed set. The classifier always picks one of its 38 classes, even for images that are not leaves. The Space adds an out-of-distribution check (cosine similarity to per-class training centroids, calibrated so 99% of real test leaves pass) that rejects solid colours, random noise and photos of people.
  • Not a diagnosis. Use it as a screening aid and confirm with an agronomist or extension service before treating crops.

License and attribution

Trained on PlantVillage (Hughes & Salathé, 2015; Mohanty, Hughes & Salathé, 2016), released under CC BY-SA. This model is shared under CC BY-SA 4.0; the DINOv2 backbone is Apache 2.0.

Author

Rodayna Emad Mohamed, Research and Teaching Assistant, College of Computer Science and AI, Pharos University in Alexandria · GitHub

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · image-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
Dinov2ForImageClassification
Ревизия весов
06ebf5e

0 моделей