Spaces:
Runtime error
Runtime error
# Workaround to install the lib without "setup.py" | |
import sys | |
from git import Repo | |
Repo.clone_from("https://github.com/dimitreOliveira/hub.git", "./hub") | |
sys.path.append("/hub") | |
import gradio as gr | |
import tensorflow as tf | |
from hub.tensorflow_hub.hf_utils import pull_from_hub | |
import requests | |
# Download human-readable labels for ImageNet. | |
response = requests.get("https://storage.googleapis.com/download.tensorflow.org/data/ImageNetLabels.txt") | |
labels = [x for x in response.text.split("\n") if x != ""] | |
model = pull_from_hub(repo_id="Dimitre/mobilenet_v3_small") | |
def preprocess(image): | |
image = image.reshape((-1, 224, 224, 3)) # (batch_size, height, width, num_channels) | |
return image / 255. | |
def postprocess(prediction): | |
return {labels[i]: float(prediction[i]) for i in range(len(labels))} | |
def predict_fn(image): | |
image = preprocess(image) | |
logits = model(image) | |
probs = tf.nn.softmax(logits, axis=1)[0].numpy() | |
scores = postprocess(probs) | |
return scores | |
description = "Using the power of CLIP and a simple small CNN, find images from movies based on what you draw!" | |
iface = gr.Interface(fn=predict_fn, | |
title="ImageNet classification with mobilenet", | |
description="Predict from wich ImageNet class your images belongs", | |
inputs=gr.Image(shape=(224, 224)), | |
outputs=gr.Label(num_top_classes=5), | |
examples=["apples.jpeg", "banana.jpeg", "car.jpeg"]) | |
iface.launch() |