Plant.health major expansion: from 90 to 500+ diseases

By
Ondřej Veselý
3 min read
Share this post

The new system now distinguishes 548 plant health classes — up from 90 in the previous model — covering a much broader range of insects, fungi, bacteria, and abiotic stresses.

Despite the ~6× expansion in scope, aggregate accuracy remains comparable to the prior version. We evaluated performance on images of sick plants: Top-1 hit rate = 58%, Top-3 hit rate = 73%. When an image has multiple ground-truth labels (e.g., mechanical damage and water deficiency), a prediction counts as a hit if the model suggests at least one of those labels.

There are no integration changes. The JSON response structure, endpoints, authentication and request parameters all remain the same.

From multilabel to a dual-model system

Our previous model was multilabel—each class received an independent score, so probabilities didn’t sum to 100%.

The new system uses two single-label submodels that each return normalized probabilities (summing to 100%); we then combine their outputs to produce final suggestions. This change makes results easier to interpret.

Note: You may see lower probability values than before. That’s expected given the normalization and broader class set—no action is required on your side.

A comparison of the legacy (left) and new (right) models on a clivia with a large light-brown patch. While the legacy model's most specific class is 'light excess', the new model can identify 'sunburn' specifically. Additionally, the sum of the legacy model's probabilities is greater than 100%.

health=auto: smarter behavior

The new model now returns non-disease lookalikes that are often confused with symptoms (e.g., lichen or moss cover, flower buds, emerging leaves, harmless insects).

With health=auto, the full Plant.Health result is returned only when the top disease suggestion is higher than a confidence threshold. This makes automatic health assessments more informative when users aren’t sure what they’re seeing.

Important: The is_healthy classifier and the health=auto modifier are independent. A result can be is_healthy=true even when the model detects non-harmful classes; these are not treated as diseases and will be marked by a new indicator in the API response non_harmful=true.

Expanded Knowledge Base

Each class in the new model is now linked to the plant.health knowledge base, available in multiple languages.
Entries include descriptions, treatment recommendations, and reference URLs, making diagnoses not only more precise but also more actionable for both end users and developers.

Given the size and language coverage, entries for some less-common classes are LLM-assisted under expert supervision.

Examples of added classes

Below are examples of diseases added to the new model.

  1. Fusarium: one of the most economically destructive groups of fungal pathogens globally, causing widespread vascular wilt and rot diseases that devastate major staple crops like wheat, maize, and bananas (Demo identification, image from Wikimedia commons)
  2. Agromyzidae: the larvae of these flies tunnel through leaf tissue to create distinctive mines that reduce photosynthetic capacity, stunt plant growth, and lead to significant yield losses; this damage is economically devastating because the resulting cosmetic scarring often renders high-value ornamental and leafy vegetable crops unmarketable.(Demo identification, image from Wikimedia commons).
  3. Eriophyidae: Eriophyid mites have a significant economic impact on global agriculture, as they not only degrade crop yield and aesthetic quality through direct feeding symptoms—such as galls, russeting, and bronzing—but also serve as the exclusive vectors for several devastating plant viruses (Demo identification, image from Wikipedia).
  4. Plasmopara: Plasmopara viticola is the most common species and is critically important because it causes downy mildew. This devastating disease inflicts massive economic losses on the global grape and wine industries by destroying crop yields and quality (Demo identification, image from Wikimedia commons).
  5. Monilinia: an economically devastating fungus responsible for "brown rot" in stone and pome fruits (such as peaches, cherries, and apples), causing massive global yield losses by destroying blossoms and rotting fruit both in the orchard and during post-harvest storage (Demo identification, image from Wikipedia).
Share this post
By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.