/ Модель

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

Лицензия
MIT
Библиотека
pytorch
Опубликована
17 июл 2026

plantvillage-mobilenetv3

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

Компактная модель imaflower классифицирует изображения листьев по 15 классам здоровья и заболеваний для предварительного скрининга растений.

0скачиваний за 30 дней0лайковвеса обновлены17 июл 2026

Бенчмарки

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

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

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

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

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

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

ConCaPlant — компактная модель классификации изображений листьев сельскохозяйственных культур, разработанная imaflower и дообученная на наборе PlantVillage. Она определяет один из 15 классов: здоровое растение или заболевание; среди примеров — фитофтороз, мучнистая роса, вирус мозаики и бактериальная пятнистость. Архитектура содержит 1,53 млн параметров и использует предварительно обученную на ImageNet основу с дообученной классификационной головой. На вход подаётся RGB-изображение, приведённое к размеру 256 × 256 и нормализованное по статистикам ImageNet; модель выдаёт оценки классов. Доступны веса PyTorch, TorchScript и ONNX.

Модель предназначена для предварительной проверки фотографий листьев томата, картофеля, перца и других культур, представленных в PlantVillage, а также для обучения, исследований и компонентов систем поддержки агрономических решений. В README сообщается о точности 99,77% на тестовой выборке, однако это значение относится к собранным изображениям PlantVillage. Модель лицензирована по MIT. Она не заменяет экспертную диагностику: качество может снижаться на полевых снимках с переменным освещением, сложным фоном, перекрытиями или несколькими заболеваниями; модель также не проверена на культурах и болезнях вне набора меток.

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

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

Ограничения

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

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

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

Открыть на Hugging Face

ConCaPlant — PlantVillage Crop Disease Classifier

A lightweight image classifier fine-tuned on the PlantVillage dataset to detect crop leaf diseases across 15 classes.

Model Details

  • Architecture: ConCaPlant (1.53M parameters), ImageNet-pretrained backbone, fine-tuned classifier head
  • Input: RGB image, resized/cropped to {256}x{256}, normalized with ImageNet mean/std
  • Output: Logits over 15 disease/healthy classes (see class_names.json)
  • Test accuracy: 0.9977382875605816
  • Best validation accuracy: 0.997092084006462
  • Framework: PyTorch (state_dict + TorchScript + ONNX exports included)

Files

FilePurpose
pytorch_model.binRaw state_dict, load into the same architecture in PyTorch
model_scripted.ptTorchScript export, no class definition needed to load
model.onnxONNX export for cross-framework / edge inference
class_names.jsonOrdered list mapping output index -> class label
training_config.jsonHyperparameters and run metadata

Intended Use

Assistive screening of crop leaf photos for common diseases (e.g. blight, mildew, mosaic virus, bacterial spot) across tomato, potato, pepper, and other crops covered by PlantVillage. Intended for research, education, and as a component in decision-support tools — not a substitute for expert agronomic diagnosis, especially for high-stakes treatment decisions.

How to Use (PyTorch)

import torch, json
from torchvision import transforms, models
from PIL import Image

# Rebuild architecture matching training, then load weights
model = models.{MODEL_NAME}(weights=None)
# NOTE: if using mobilenet_v3, replace classifier[3] to match num_classes before loading:
# model.classifier[3] = torch.nn.Linear(model.classifier[3].in_features, {num_classes})
state_dict = torch.load("pytorch_model.bin", map_location="cpu")
model.load_state_dict(state_dict)
model.eval()

class_names = json.load(open("class_names.json"))

tfms = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop({img_size}),
    transforms.ToTensor(),
    transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]),
])

img = Image.open("leaf.jpg").convert("RGB")
x = tfms(img).unsqueeze(0)

with torch.no_grad():
    logits = model(x)
    pred = logits.argmax(dim=1).item()

print(class_names[pred])

How to Use (ONNX Runtime)

import onnxruntime as ort
import numpy as np
from PIL import Image
from torchvision import transforms
import json

sess = ort.InferenceSession("model.onnx")
class_names = json.load(open("class_names.json"))

tfms = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop({img_size}),
    transforms.ToTensor(),
    transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]),
])

img = Image.open("leaf.jpg").convert("RGB")
x = tfms(img).unsqueeze(0).numpy()

logits = sess.run(None, {"input": x})[0]
pred = int(np.argmax(logits, axis=1)[0])
print(class_names[pred])

Training Data

PlantVillage dataset — labeled leaf images across multiple crop species and disease categories. Split 70/15/15 train/val/test for this run.

Limitations & Biases

  • Trained on lab-condition/curated leaf photos (uniform backgrounds); accuracy may be lower on field photos with variable lighting, backgrounds, occlusion, or co-occurring diseases.
  • Class distribution in PlantVillage is imbalanced across crops/diseases — check training_config.json and the per-class F1 scores from the notebook before relying on this model for underrepresented classes.
  • Not validated for crops or diseases outside the PlantVillage label set.

Citation

If you use this model, please cite the PlantVillage dataset and this repository.

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

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

GPU в ailist

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

Нельзя запустить

В репозитории нет config.json: не понять архитектуру модели.

Ревизия весов
d76fe18

0 моделей