Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from transformers import pipeline | |
| # Initialize the pipeline with the zero-shot image classification model | |
| image_classifier = pipeline(task="zero-shot-image-classification", model="google/siglip-so400m-patch14-384") | |
| # Define the candidate labels (classes) for classification | |
| texts = [ | |
| "Mini Dress", | |
| "Midi Dress", | |
| "Maxi Dress", | |
| "Short sleeve", | |
| "Long sleeve", | |
| "Three-Fourth sleeve", | |
| "Puff Sleeve", | |
| "A-line Dress", | |
| "T-shirt Dress", | |
| "Shirt Dress", | |
| "Flowy Dress", | |
| "Halter Neck Dress", | |
| "Cut-out Dress", | |
| ] | |
| # Define the prediction function | |
| def predict(input_img): | |
| predictions = image_classifier(input_img, candidate_labels=texts) | |
| # Return the input image and all predictions as a dictionary of label: score | |
| return {p["label"]: p["score"] for p in predictions} | |
| # Set up the Gradio interface | |
| gradio_app = gr.Interface( | |
| predict, | |
| inputs=gr.Image(label="Select Image", sources=['upload', 'webcam'], type="pil"), | |
| outputs=[gr.Label(label="Result")], | |
| title="Image Classification", | |
| ) | |
| # Launch the Gradio app | |
| if __name__ == "__main__": | |
| gradio_app.launch(share=True) | |