import torch import gradio as gr from transformers import AutoFeatureExtractor, AutoModelForImageClassification extractor = AutoFeatureExtractor.from_pretrained("susnato/plant_disease_detection-beans") model = AutoModelForImageClassification.from_pretrained("susnato/plant_disease_detection-beans") labels = ['angular_leaf_spot', 'rust', 'healthy'] def classify(im): features = extractor(im, return_tensors='pt') logits = model(features["pixel_values"])[-1] probability = torch.nn.functional.softmax(logits, dim=-1) probs = probability[0].detach().numpy() confidences = {label: float(probs[i]) for i, label in enumerate(labels)} return confidences block = gr.Blocks(theme="JohnSmith9982/small_and_pretty") with block: gr.HTML( """

PLANT DISEASE DETECTION

""" ) with gr.Group(): with gr.Row(): gr.HTML( """

Crop diseases are a major threat to food security, but their rapid identification remains difficult in many parts of the world due to the lack of the necessary infrastructure.

Using Computer Vision models in plant disease detection and diagnosis has the potential to revolutionize the way we approach agriculture. By providing real-time monitoring and accurate detection of plant diseases, A.I. can help farmers reduce costs and increase crop

""" ) with gr.Group(): with gr.Row(): gr.HTML( """

Our Approach

""" ) with gr.Group(): image = gr.Image(type='pil') outputs = gr.Label() button = gr.Button("Classify") button.click(classify, inputs=[image], outputs=[outputs], ) with gr.Group(): gr.Examples(["ex3.jpg"], fn=classify, inputs=[image], outputs=[outputs], cache_examples=True ) block.launch(debug=False, share=False)