Downloads · 30 days
257
1% of all-time downloads
foduucom/plant-leaf-detection-and-classification
plant-leaf-detection-and-classification is a object detection model from foduucom. Use it when you need objects located in an image. It is set up for ultralytics.
Below is the Model Card for the YOLOv8s Leaf Detection and Classification model:
Downloads · 30 days
257
1% of all-time downloads
All-time downloads
26.8K
Public
Repo size
22.6 MB
Likes
36
Public
Click a slice to open those files.
.pt22.5 MB · 98%
From the Hugging Face model README
Below is the Model Card for the YOLOv8s Leaf Detection and Classification model:
The YOLOv8s Leaf Detection and Classification model is an object detection model based on the YOLO (You Only Look Once) framework. It is designed to detect and classify various types of leaves in images. The model has achieved a precision ([email protected]) of 0.946 on the object detection task.
The YOLOv8s Leaf Detection and Classification model is built on the YOLOv8 architecture, which is known for its real-time object detection capabilities. This specific model has been trained to recognize and classify different types of leaves from various plant species. It can detect multiple leaf instances in an image and assign them to their respective classes.
['ginger', 'banana', 'tobacco', 'ornamaental', 'rose', 'soyabean', 'papaya', 'garlic', 'raspberry', 'mango', 'cotton', 'corn', 'pomgernate', 'strawberry', 'Blueberry', 'brinjal', 'potato', 'wheat', 'olive', 'rice', 'lemon', 'cabbage', 'gauava', 'chilli', 'capcicum', 'sunflower', 'cherry', 'cassava', 'apple', 'tea', 'sugarcane', 'groundnut', 'weed', 'peach', 'coffee', 'cauliflower', 'tomato', 'onion', 'gram', 'chiku', 'jamun', 'castor', 'pea', 'cucumber', 'grape', 'cardamom']
Furthermore, the YOLOv8s Leaf Detection and Classification model encourages user collaboration by allowing them to contribute their own plant leaf data. Users can submit images of new plant species, and suggest plant names for classification. Our team will diligently work to incorporate these new plant classes into the model, enhancing its ability to identify and classify an even wider variety of plant leaves. Users are invited to actively participate in expanding the YOLOv8s Leaf Detection and Classification model's capabilities by sharing their plant names and corresponding dataset links through our community platform or by emailing the information to [email protected]. Your contributions will play a crucial role in enriching the model's knowledge and recognition of diverse plant species.
The YOLOv8s Leaf Detection and Classification model can be used directly for object detection tasks related to leaf detection and classification. It does not require fine-tuning or integration into a larger ecosystem or application.
The model can also be fine-tuned for specific leaf detection and classification tasks or integrated into a larger application for plant-related research, agriculture, or environmental monitoring.
The model is not designed for unrelated tasks or object detection scenarios outside the scope of leaf detection and classification.
The YOLOv8s Leaf Detection and Classification model may have some limitations and biases:
Users (both direct and downstream) should be made aware of the risks, biases, and limitations of the model. Further research and experimentation are recommended to assess its performance in specific use cases and domains.
To get started with the YOLOv8s Leaf Detection and Classification model, follow these steps:
pip install ultralyticsplus==0.0.28 ultralytics==8.0.43
from ultralyticsplus import YOLO, render_result
# load model
model = YOLO('foduucom/plant-leaf-detection-and-classification')
# set model parameters
model.overrides['conf'] = 0.25 # NMS confidence threshold
model.overrides['iou'] = 0.45 # NMS IoU threshold
model.overrides['agnostic_nms'] = False # NMS class-agnostic
model.overrides['max_det'] = 1000 # maximum number of detections per image
# set image
image = 'path/to/your/image'
# perform inference
results = model.predict(image)
# observe results
print(results[0].boxes)
render = render_result(model=model, image=image, result=results[0])
render.show()
The model is trained on hundreds of images of 46 different plants, including both disease-infected and healthy leaves.
The training process involves using high GPU capacity and is run for up to 50 epochs, where each epoch represents a complete pass through the entire training dataset, adjusting model weights to minimize the classification loss and optimize the performance.
YOLOv8s is a powerful convolutional neural network tailored for leaf detection and classification of over 46 plant species. It leverages a modified CSPDarknet53 backbone, self-attention mechanism, and a feature pyramid network for accurate multi-scaled object detection, providing precise identification and classification of plant leaves.
YOLOv8 architecture utilizes a modified CSPDarknet53 as its backbone with 53 convolutional layers and cross-stage partial connections for improved information flow. The head consists of convolutional and fully connected layers for predicting bounding boxes, objectness scores, and class probabilities. It incorporates a self-attention mechanism and a feature pyramid network for multi-scaled object detection, enabling focus on relevant image features and detecting objects of different sizes.
NVIDIA A100 40GB GPU card
Jupyter Notebook environment for model training.
@ModelCard{
author = {Nehul Agrawal and
Pranjal singh Thakur},
title = { YOLOv8s Leaf Detection and Classification},
year = {2023}
}