Skip to main content

A Python library for predicting plant diseases from leaf images using trained deep learning models.

Project description

# ๐ŸŒฟ PlantDoc Predictor

๐ŸŒฟ PlantDoc-Predictor

PyPI version License: MIT Python Versions Downloads


A Python library for predicting plant diseases from leaf images using pre-trained or custom deep learning models.


๐Ÿš€ Features

  • โœ… Pretrained models included โ€” Ready-to-use architectures like InceptionV3, ResNet50, and MobileNetV2, trained on the 38-class PlantVillage dataset.
  • ๐Ÿง  Unified API โ€” One interface for both built-in and custom .h5 models.
  • ๐Ÿงฉ Custom model support โ€” Load your own model and label mapping JSON.
  • ๐ŸŒฑ Extensible โ€” Easily add new crops, datasets, or models via model_registry.json.
  • ๐Ÿงฐ Visualization support โ€” Displays prediction confidence and leaf images.
  • โš™๏ธ Cross-platform โ€” Works seamlessly on Windows, macOS, and Linux.

๐Ÿ”ฌ Advanced Features (NEW ๐Ÿš€) Will be comming in release 0.2.2(TBD)

  • ๐Ÿง  Full Model Access โ€” Retrieve the complete loaded model for fine-tuning and experimentation.
  • โš™๏ธ Weights Extraction โ€” Access model weights for analysis, comparison, and research.
  • ๐Ÿงฉ Layer Introspection โ€” List all layers and inspect architecture programmatically.

๐Ÿ”ฅ Feature Extraction (Research-Grade ๐Ÿš€)

  • ๐Ÿ“Š Extract intermediate representations from any layer
  • ๐Ÿงช Enables feature-space SMOTE, clustering, and embedding analysis
  • ๐Ÿง  Works across all models in the model zoo
  • ๐Ÿ” Supports custom layer selection

๐Ÿ‘‰ This transforms PlantDoc-Predictor into a feature extraction + research framework, not just an inference tool.


๐Ÿง  Why Use PlantDoc-Predictor

PlantDoc-Predictor was created to reduce repetitive work in plant-disease research.
Researchers and agritech developers often train from scratch โ€” this tool eliminates that friction by providing:

  • Pretrained baselines for benchmarking new models.
  • Standardized label sets and metadata for reproducibility.
  • Plug-and-play inference for agricultural image datasets.
  • A unified interface for rapid experimentation and deployment.

Whether youโ€™re a researcher, startup, or precision-agriculture developer, PlantDoc-Predictor simplifies your workflow and lets you focus on innovation โ€” not setup.


๐Ÿงฌ Supported Models

PlantDoc-Predictor includes a diverse model zoo of pretrained CNN architectures fine-tuned on the PlantVillage 38-class plant disease dataset in 0.2.1 version onwards.

These models are automatically downloaded from the remote registry when first used, making them ready for plug-and-play inference.

Model Name Input Size Accuracy Preprocessing Description
InceptionV3 v1 299ร—299 98.2% inception InceptionV3 model fine-tuned on the PlantVillage 38-class dataset
ResNet50 v1 224ร—224 97.8% resnet50 Deep residual network enabling powerful feature extraction
EfficientNetB50 v1 224ร—224 97.8% efficientnet EfficientNet architecture balancing accuracy and computational efficiency
MobileNetV2 v1 224ร—224 96.8% mobilenetv2 Lightweight model designed for mobile and edge deployment
DenseNet121 v1 224ร—224 98.68% densenet121_v1 Dense connectivity architecture improving gradient flow and feature reuse
DenseNet169 v1 224ร—224 99.68% densenet169_v1 High-performance DenseNet variant achieving the best accuracy in the model zoo
DenseNet210 v1 224ร—224 97.0% densenet210_v1 Very deep DenseNet architecture for advanced feature extraction
VGG16 v1 224ร—224 96.8% vgg16_v1 Classic deep CNN architecture useful for benchmarking experiments
VGG19 v1 224ร—224 98.98% vgg19_v1 Deeper VGG architecture providing strong classification performance
AlexNet v1 224ร—224 92.8% alexnet_v1 Early CNN architecture useful as a historical baseline model

๐Ÿš€ Upcoming Models

PlantDoc-Predictor is actively expanding its Model Zoo.
Future releases will include modern vision architectures and transformer-based models to further improve performance and research capabilities.

Some of the upcoming models planned for integration include:

  • Vision Transformers (ViT) โ€” e.g., vit_base_patch16_224, vit_large_patch16_224
  • ConvNeXt architectures โ€” e.g., convnext_tiny, convnext_small, convnext_base
  • Hybrid CNNโ€“Transformer models
  • Swin Transformers โ€” e.g., swin_tiny_patch4_window7_224
  • EfficientNetV2 family
  • Multimodal models for plant disease detection that I presented via many conferences.

Planned release very month and many more features to get added as well.

These additions will allow researchers and developers to experiment with state-of-the-art deep learning architectures for plant disease classification.

Stay tuned for future releases as the PlantDoc Model Zoo continues to grow. ๐ŸŒฟ


๐ŸŒ Community & Contact

PlantDoc-Predictor is growing into a widely used open-source machine learning library for plant disease classification.
Community participation is essential to help expand the PlantDoc Model Zoo and improve the ecosystem.

๐Ÿ“ˆ Current Usage

The library is actively used by researchers, developers, and agritech enthusiasts worldwide.

Downloads

These downloads reflect the growing interest in AI-powered plant disease detection and encourage further development of the library.


๐Ÿค Contribute to the Project

We warmly welcome contributions from the community to help improve and expand PlantDoc-Predictor.

You can contribute by:

  • ๐Ÿง  Adding new pretrained models to the PlantDoc Model Zoo
  • โš™๏ธ Improving preprocessing or inference pipelines
  • ๐Ÿ“Š Benchmarking new architectures
  • ๐Ÿงช Adding test cases and improving reproducibility
  • ๐Ÿ“š Improving documentation and tutorials
  • ๐Ÿ› Fixing bugs and optimizing performance

If you are interested in contributing to the development of this widely used ML library, feel free to open a pull request or start a discussion.


๐Ÿ“ซ Contact the Author

If you have ideas, questions, research collaboration proposals, or model suggestions, feel free to reach out.

Author: Subham Divakar
๐Ÿ“ง Email: shubham.divakar@gmail.com
๐Ÿ™ GitHub: https://github.com/shubham10divakar

We welcome researchers, ML engineers, and contributors who want to help make PlantDoc-Predictor the largest open-source model zoo for plant disease detection. ๐ŸŒฟ



๐Ÿ“Š Model Zoo Comparison

The following table compares the pretrained models included in PlantDoc-Predictor .

Model Parameters Input Size Accuracy Best Use Case
InceptionV3 v1 ~23M 299ร—299 98.2% High accuracy classification
ResNet50 v1 ~25M 224ร—224 97.8% Deep feature extraction
EfficientNetB50 v1 ~30M 224ร—224 97.8% Balanced accuracy & efficiency
MobileNetV2 v1 ~3.5M 224ร—224 96.8% Edge / mobile deployment
DenseNet121 v1 ~8M 224ร—224 98.68% Efficient deep CNN
DenseNet169 v1 ~14M 224ร—224 99.68% Highest accuracy
DenseNet210 v1 ~20M 224ร—224 97.0% Deep dense feature learning
VGG16 v1 ~138M 224ร—224 96.8% Baseline CNN benchmark
VGG19 v1 ~144M 224ร—224 98.98% Deeper VGG architecture
AlexNet v1 ~60M 224ร—224 92.8% Historical CNN baseline

๐Ÿ† Model Performance Leaderboard

Top performing models on the PlantVillage 38-class dataset.

Rank Model Accuracy
๐Ÿฅ‡ DenseNet169 v1 99.68%
๐Ÿฅˆ VGG19 v1 98.98%
๐Ÿฅ‰ DenseNet121 v1 98.68%
4 InceptionV3 v1 98.2%
5 ResNet50 v1 97.8%
6 EfficientNetB50 v1 97.8%
7 DenseNet210 v1 97.0%
8 MobileNetV2 v1 96.8%
9 VGG16 v1 96.8%
10 AlexNet v1 92.8%

๐Ÿ“ฆ Installation

Install directly via pip:

pip install plantdoc-predictor

๐Ÿš€ How to Use plantdoc_predictor

plantdoc_predictor provides an easy-to-use interface for plant disease prediction using multiple pretrained deep learning models trained on the PlantVillage 38-class dataset.


1๏ธโƒฃ List Available Models

You can view all available pretrained models using:

from plantdoc_predictor import predictor, Predictor

predictor.list_available_models()

Output:-

Available Models:
-----------------
- inceptionv3_v1      | Input: [299, 299] | Acc: 98.20% | InceptionV3 model fine-tuned on PlantVillage 38-class dataset
- resnet50_v1         | Input: [224, 224] | Acc: 97.80% | ResNet50 fine-tuned on PlantVillage 38-class dataset
- efficientnetb50_v1  | Input: [224, 224] | Acc: 97.80% | EfficientNetB50 fine-tuned on PlantVillage 38-class dataset
- mobilenetv2_v1      | Input: [224, 224] | Acc: 96.80% | Lightweight model for edge/mobile deployment
- densenet121_v1      | Input: [224, 224] | Acc: 98.68% | DenseNet121 fine-tuned on PlantVillage 38-class dataset
- densenet169_v1      | Input: [224, 224] | Acc: 99.68% | DenseNet169 fine-tuned on PlantVillage 38-class dataset
- densenet210_v1      | Input: [224, 224] | Acc: 97.00% | DenseNet210 fine-tuned on PlantVillage 38-class dataset
- vgg16_v1            | Input: [224, 224] | Acc: 96.80% | VGG16 fine-tuned on PlantVillage 38-class dataset
- vgg19_v1            | Input: [224, 224] | Acc: 98.98% | VGG19 fine-tuned on PlantVillage 38-class dataset
- alexnet_v1          | Input: [224, 224] | Acc: 92.80% | AlexNet fine-tuned on PlantVillage 38-class dataset

2. Choose a model from the available ones and use it below.

from plantdoc_predictor import predictor, Predictor
#predictor.list_available_models()

predictor = Predictor(model_name="efficientnetb50_v1", verbose=False)
result = predictor.predict("D:/D/my docs/my docs/projects/plant disease detection on streamlit cloud/streamlit plant disease detection/data/plantvillagedataset/train/color/Blueberry___healthy/0a3f8b2f-9bb1-4da9-85a1-fb5a52c059e2___RS_HL 2478.JPG")
print(result)

Output:-
{
 'model': 'efficientnetb50_v1',
 'label': 'Blueberry___healthy',
 'confidence': 0.9999573230743408
}

when verbose=True in Predictor(model_name="efficientnetb50_v1", verbose=True)

from plantdoc_predictor import predictor, Predictor
#predictor.list_available_models()

predictor = Predictor(model_name="efficientnetb50_v1", verbose=True)
result = predictor.predict("D:/D/my docs/my docs/projects/plant disease detection on streamlit cloud/streamlit plant disease detection/data/plantvillagedataset/train/color/Blueberry___healthy/0a3f8b2f-9bb1-4da9-85a1-fb5a52c059e2___RS_HL 2478.JPG")
print(result)

OUTPUT:-

โœ” Using cached file: efficientnetb50_v1.h5
โœ” Using cached file: efficientnetb50_v1_labels.json
WARNING:absl:Compiled the loaded model, but the compiled metrics have yet to be built. `model.compile_metrics` will be empty until you train or evaluate the model.
1/1 โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” 2s 2s/step

================= Prediction Result =================
๐Ÿ“‚ Image Path     : D:/D/my docs/my docs/projects/plant disease detection on streamlit cloud/streamlit plant disease detection/data/plantvillagedataset/train/color/Blueberry___healthy/0a3f8b2f-9bb1-4da9-85a1-fb5a52c059e2___RS_HL 2478.JPG
๐Ÿงฉ Model Used     : efficientnetb50_v1
โœ… Predicted Class: Blueberry___healthy
๐Ÿ”ข Confidence     : 100.00%
{'model': 'efficientnetb50_v1', 'label': 'Blueberry___healthy', 'confidence': 0.9999573230743408}

๐Ÿง  Access Full Model now

You can retrieve the full Keras model for advanced use cases like fine-tuning or inspection.

from plantdoc_predictor import Predictor

predictor = Predictor(model_name="resnet50_v1")

model = predictor.get_model()

print(type(model))

Output:
%runfile 'D:/D/my docs/my docs/projects/plantdoc-predictor/plantdoc-predictor/plantdoc_predictor/Test_v1.py' --wdir
2026-03-21 12:39:04.100272: I tensorflow/core/util/port.cc:153] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2026-03-21 12:39:06.296357: I tensorflow/core/util/port.cc:153] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2026-03-21 12:39:06.914439: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: SSE3 SSE4.1 SSE4.2 AVX AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
WARNING:absl:Compiled the loaded model, but the compiled metrics have yet to be built. `model.compile_metrics` will be empty until you train or evaluate the model.
<class 'keras.src.models.functional.Functional'>

โš™๏ธ Extract Model Weights

Access raw model weights for research and experimentation.

from plantdoc_predictor import Predictor

predictor = Predictor(model_name="resnet50_v1")

model = predictor.get_model()
#print(type(model))
weights = predictor.get_weights()

print("Total weight tensors:", len(weights))
print("First tensor shape:", weights[0].shape)

Output:
%runfile 'D:/D/my docs/my docs/projects/plantdoc-predictor/plantdoc-predictor/plantdoc_predictor/Test_v1.py' --wdir
Reloaded modules: recursive_additive_attention_v1, predictor
WARNING:absl:Compiled the loaded model, but the compiled metrics have yet to be built. `model.compile_metrics` will be empty until you train or evaluate the model.
Total weight tensors: 320
First tensor shape: (7, 7, 3, 64)

๐Ÿงฉ Layer-wise Weight Info

Get structured information about model weights.

from plantdoc_predictor import Predictor
predictor = Predictor(model_name="resnet50_v1")

model = predictor.get_model()
#print(type(model))
weights = predictor.get_weights()

weights_info = predictor.get_weights_info()

for layer, shapes in weights_info.items():
    print(layer, shapes)

Output:
%runfile 'D:/D/my docs/my docs/projects/plantdoc-predictor/plantdoc-predictor/plantdoc_predictor/Test_v1.py' --wdir
Reloaded modules: recursive_additive_attention_v1, predictor
WARNING:absl:Compiled the loaded model, but the compiled metrics have yet to be built. `model.compile_metrics` will be empty until you train or evaluate the model.
conv1_conv [(7, 7, 3, 64), (64,)]
conv1_bn [(64,), (64,), (64,), (64,)]
conv2_block1_1_conv [(1, 1, 64, 64), (64,)]
conv2_block1_1_bn [(64,), (64,), (64,), (64,)]
conv2_block1_2_conv [(3, 3, 64, 64), (64,)]
conv2_block1_2_bn [(64,), (64,), (64,), (64,)]
conv2_block1_0_conv [(1, 1, 64, 256), (256,)]
conv2_block1_3_conv [(1, 1, 64, 256), (256,)]
conv2_block1_0_bn [(256,), (256,), (256,), (256,)]
conv2_block1_3_bn [(256,), (256,), (256,), (256,)]
conv2_block2_1_conv [(1, 1, 256, 64), (64,)]
conv2_block2_1_bn [(64,), (64,), (64,), (64,)]
conv2_block2_2_conv [(3, 3, 64, 64), (64,)]
conv2_block2_2_bn [(64,), (64,), (64,), (64,)]
conv2_block2_3_conv [(1, 1, 64, 256), (256,)]
conv2_block2_3_bn [(256,), (256,), (256,), (256,)]
conv2_block3_1_conv [(1, 1, 256, 64), (64,)]
conv2_block3_1_bn [(64,), (64,), (64,), (64,)]
conv2_block3_2_conv [(3, 3, 64, 64), (64,)]
conv2_block3_2_bn [(64,), (64,), (64,), (64,)]
conv2_block3_3_conv [(1, 1, 64, 256), (256,)]
conv2_block3_3_bn [(256,), (256,), (256,), (256,)]
conv3_block1_1_conv [(1, 1, 256, 128), (128,)]
conv3_block1_1_bn [(128,), (128,), (128,), (128,)]
conv3_block1_2_conv [(3, 3, 128, 128), (128,)]
conv3_block1_2_bn [(128,), (128,), (128,), (128,)]
conv3_block1_0_conv [(1, 1, 256, 512), (512,)]
conv3_block1_3_conv [(1, 1, 128, 512), (512,)]
conv3_block1_0_bn [(512,), (512,), (512,), (512,)]
conv3_block1_3_bn [(512,), (512,), (512,), (512,)]
conv3_block2_1_conv [(1, 1, 512, 128), (128,)]
conv3_block2_1_bn [(128,), (128,), (128,), (128,)]
conv3_block2_2_conv [(3, 3, 128, 128), (128,)]
conv3_block2_2_bn [(128,), (128,), (128,), (128,)]
conv3_block2_3_conv [(1, 1, 128, 512), (512,)]
conv3_block2_3_bn [(512,), (512,), (512,), (512,)]
conv3_block3_1_conv [(1, 1, 512, 128), (128,)]
conv3_block3_1_bn [(128,), (128,), (128,), (128,)]
conv3_block3_2_conv [(3, 3, 128, 128), (128,)]
conv3_block3_2_bn [(128,), (128,), (128,), (128,)]
conv3_block3_3_conv [(1, 1, 128, 512), (512,)]
conv3_block3_3_bn [(512,), (512,), (512,), (512,)]
conv3_block4_1_conv [(1, 1, 512, 128), (128,)]
conv3_block4_1_bn [(128,), (128,), (128,), (128,)]
conv3_block4_2_conv [(3, 3, 128, 128), (128,)]
conv3_block4_2_bn [(128,), (128,), (128,), (128,)]
conv3_block4_3_conv [(1, 1, 128, 512), (512,)]
conv3_block4_3_bn [(512,), (512,), (512,), (512,)]
conv4_block1_1_conv [(1, 1, 512, 256), (256,)]
conv4_block1_1_bn [(256,), (256,), (256,), (256,)]
conv4_block1_2_conv [(3, 3, 256, 256), (256,)]
conv4_block1_2_bn [(256,), (256,), (256,), (256,)]
conv4_block1_0_conv [(1, 1, 512, 1024), (1024,)]
conv4_block1_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block1_0_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block1_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block2_1_conv [(1, 1, 1024, 256), (256,)]
conv4_block2_1_bn [(256,), (256,), (256,), (256,)]
conv4_block2_2_conv [(3, 3, 256, 256), (256,)]
conv4_block2_2_bn [(256,), (256,), (256,), (256,)]
conv4_block2_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block2_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block3_1_conv [(1, 1, 1024, 256), (256,)]
conv4_block3_1_bn [(256,), (256,), (256,), (256,)]
conv4_block3_2_conv [(3, 3, 256, 256), (256,)]
conv4_block3_2_bn [(256,), (256,), (256,), (256,)]
conv4_block3_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block3_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block4_1_conv [(1, 1, 1024, 256), (256,)]
conv4_block4_1_bn [(256,), (256,), (256,), (256,)]
conv4_block4_2_conv [(3, 3, 256, 256), (256,)]
conv4_block4_2_bn [(256,), (256,), (256,), (256,)]
conv4_block4_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block4_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block5_1_conv [(1, 1, 1024, 256), (256,)]
conv4_block5_1_bn [(256,), (256,), (256,), (256,)]
conv4_block5_2_conv [(3, 3, 256, 256), (256,)]
conv4_block5_2_bn [(256,), (256,), (256,), (256,)]
conv4_block5_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block5_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv4_block6_1_conv [(1, 1, 1024, 256), (256,)]
conv4_block6_1_bn [(256,), (256,), (256,), (256,)]
conv4_block6_2_conv [(3, 3, 256, 256), (256,)]
conv4_block6_2_bn [(256,), (256,), (256,), (256,)]
conv4_block6_3_conv [(1, 1, 256, 1024), (1024,)]
conv4_block6_3_bn [(1024,), (1024,), (1024,), (1024,)]
conv5_block1_1_conv [(1, 1, 1024, 512), (512,)]
conv5_block1_1_bn [(512,), (512,), (512,), (512,)]
conv5_block1_2_conv [(3, 3, 512, 512), (512,)]
conv5_block1_2_bn [(512,), (512,), (512,), (512,)]
conv5_block1_0_conv [(1, 1, 1024, 2048), (2048,)]
conv5_block1_3_conv [(1, 1, 512, 2048), (2048,)]
conv5_block1_0_bn [(2048,), (2048,), (2048,), (2048,)]
conv5_block1_3_bn [(2048,), (2048,), (2048,), (2048,)]
conv5_block2_1_conv [(1, 1, 2048, 512), (512,)]
conv5_block2_1_bn [(512,), (512,), (512,), (512,)]
conv5_block2_2_conv [(3, 3, 512, 512), (512,)]
conv5_block2_2_bn [(512,), (512,), (512,), (512,)]
conv5_block2_3_conv [(1, 1, 512, 2048), (2048,)]
conv5_block2_3_bn [(2048,), (2048,), (2048,), (2048,)]
conv5_block3_1_conv [(1, 1, 2048, 512), (512,)]
conv5_block3_1_bn [(512,), (512,), (512,), (512,)]
conv5_block3_2_conv [(3, 3, 512, 512), (512,)]
conv5_block3_2_bn [(512,), (512,), (512,), (512,)]
conv5_block3_3_conv [(1, 1, 512, 2048), (2048,)]
conv5_block3_3_bn [(2048,), (2048,), (2048,), (2048,)]
dense [(2048, 38), (38,)]

๐Ÿ“ License

This project is licensed under the MIT License.

You are free to:

  • โœ… Use the library for both commercial and academic purposes
  • ๐Ÿ”ง Modify, distribute, or integrate it into your own software
  • ๐ŸŒ Reference and extend it in research or production projects

Just ensure you include the original copyright notice and this license file.

See the full text in the LICENSE file.


๐ŸŒ Contributing

Contributions are warmly welcomed! ๐ŸŒฑ

We value community participation to make PlantDoc-Predictor more robust, accurate, and user-friendly.

You can contribute by:

  • ๐Ÿง  Adding new pretrained or fine-tuned models
  • โš™๏ธ Improving preprocessing or postprocessing modules
  • ๐Ÿงฉ Extending model registry or dataset support
  • ๐Ÿงช Writing new test cases for reproducibility
  • ๐Ÿ› Fixing bugs and optimizing performance
  • ๐Ÿ“š Improving documentation and adding usage examples

๐Ÿ”ง Steps to Contribute

  1. Fork this repository
  2. Create your feature branch
    git checkout -b feature/your-feature
    

๐Ÿ“ซ Contact

Author: Subham Divakar
Email: shubham.divakar@gmail.com
GitHub: shubham10divakar
PyPI: https://pypi.org/project/plantdoc-predictor/
LinkedIn: linkedin.com/in/subhamdivakar
Project Website: My Site

If you have any questions, collaboration ideas, or model suggestions โ€” feel free to reach out!
You can also open an issue or submit a pull request in the GitHub repository.


โค๏ธ Acknowledgements

A heartfelt thank you to all the open-source contributors and researchers who made this project possible:

  • ๐ŸŒฟ PlantVillage Dataset โ€” for providing an invaluable resource for agricultural disease detection.
  • ๐Ÿค– TensorFlow/Keras โ€” for powering deep learning model training and inference.
  • ๐Ÿงฉ Python Open Source Community โ€” for libraries that make AI tools easier to build.
  • ๐Ÿงช Researchers & Reviewers โ€” for advancing the field of AI in agriculture.
  • ๐Ÿ’ป Contributors โ€” for helping test, improve, and document PlantDoc-Predictor.

Your support continues to make plant disease prediction accessible and impactful across the world.


โ€œEmpowering agriculture with AI โ€” one leaf at a time.โ€ ๐ŸŒพ
โ€” Subham Divakar, Creator of PlantDoc-Predictor

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plantdoc_predictor-1.0.0.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plantdoc_predictor-1.0.0-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

Details for the file plantdoc_predictor-1.0.0.tar.gz.

File metadata

  • Download URL: plantdoc_predictor-1.0.0.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.1

File hashes

Hashes for plantdoc_predictor-1.0.0.tar.gz
Algorithm Hash digest
SHA256 547e5be09c3d4943b23d5b85435cc2a4fe0093fa40d7cdf42bd526a1b5064229
MD5 ada077a59c52b889bea319203215e398
BLAKE2b-256 7750f1cf992171f6d8a510705f9bec310c5cd928938d7293902f07deca89e7f0

See more details on using hashes here.

File details

Details for the file plantdoc_predictor-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for plantdoc_predictor-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a6d8d740ea54d20a7812db2b09e826858b3e7aeab091d4647e932ab052d926b5
MD5 be51c5ede21617dc20950bc3e0013f02
BLAKE2b-256 aa34aeef5f6c3973df381df247453cce0743f196d06dc9a6953117171eb52d7c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page