CoolFace
Modelpublic

Schram03/fruits-classification

sourceHugging Faceapache-2.0updated 1y agoView on Hugging Face
0likes36downloads
app.py39 linesDownload Raw Back to root
1import gradio as gr2from transformers import pipeline3 4# Load models5vit_classifier = pipeline("image-classification", model="Schram03/fruits-classification")6clip_detector = pipeline(model="openai/clip-vit-large-patch14", task="zero-shot-image-classification")7 8labels_fruits = [9    'Apple', 'Apricot', 'Avocado', 'Banana', 'Blackberry', 'Blueberry', 'Cactus fruit', 'Cherry', 'Clementine', 'Cocos', 'Grape', 'Grapefruit', 'Guava', 'Kaki', 'Kiwi', 'Lemon', 'Limes', 'Lychee', 'Mandarine', 'Mango', 'Maracuja', 'Nectarine', 'Orange', 'Papaya', 'Passion Fruit', 'Peach', 'Pear', 'Pineapple', 'Plum', 'Pomegranate', 'Quince', 'Strawberry', 'Watermelon'10]11 12def classify_fruit(image):13    vit_results = vit_classifier(image)14    vit_output = {result['label']: result['score'] for result in vit_results}15    16    clip_results = clip_detector(image, candidate_labels=labels_fruits)17    clip_output = {result['label']: result['score'] for result in clip_results}18    19    return {"ViT Classification": vit_output, "CLIP Zero-Shot Classification": clip_output}20 21example_images = [22    ["example_images/apple.jpg"],23    ["example_images/blueberry.jpg"],24    ["example_images/lemon.jpg"],25    ["example_images/pear.jpg"],26    ["example_images/plum.jpg"],27    ["example_images/watermelon.jpg"]28]29 30iface = gr.Interface(31    fn=classify_fruit,32    inputs=gr.Image(type="filepath"),33    outputs=gr.JSON(),34    title="Fruit Classification Comparison",35    description="Upload an image of a fruit, and compare results from a trained ViT model and a zero-shot CLIP model.",36    examples=example_images37)38 39iface.launch()