clothing / app.py
yusyel
v2
dafefb9 unverified
raw
history blame
1.71 kB
import gradio as gr
from huggingface_hub import from_pretrained_keras
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing import image
import numpy as np
model = from_pretrained_keras("yusyel/clothing")
class_names=["dress",
"hat",
"longsleee",
"outwear",
"pants",
"shirt",
"shoes",
"shorts",
"skirt",
"t-shirt"]
def preprocess_image(img):
img = load_img(img, target_size=(299, 299, 3))
img = image.img_to_array(img)
img = np.expand_dims(img, axis=0)
img /= 255.0
print(img.shape)
return img
def predict(img):
img = preprocess_image(img)
pred = model.predict(img)
pred = np.squeeze(np.exp(pred)/np.sum(np.exp(pred))).astype(float)
print(dict(zip(class_names, pred)))
return dict(zip(class_names, pred))
with gr.Interface(
fn=predict,
inputs=[gr.inputs.Image(type="filepath")],
outputs=gr.outputs.Label(),
examples=[
["./img/dress.jpg"],
["./img/hat.jpg"],
["./img/longsleeve.jpg"],
["./img/outwear.jpg"],
["./img/pants.jpg"],
["./img/shirt.jpg"],
["./img/shoes.jpg"],
["./img/short.jpg"],
["./img/skirt.jpg"],
["./img/t-shirt.jpg"],
],
title="Fashion Classification") as demo:
gr.Markdown("# This Demo For Free Machine Learning Zoomcamp", elem_classes=['center'])
gr.Markdown("Course github Links [github](https://github.com/DataTalksClub/machine-learning-zoomcamp)",
elem_classes=['center', 'small-big'])
demo.launch(server_name="0.0.0.0", server_port=7860)