| import gradio as gr |
| import tensorflow as tf |
| import numpy as np |
| from PIL import Image |
|
|
| new_model = tf.keras.models.load_model("./MobileNet-V2-Cats-Dogs.keras") |
|
|
| def image_classifier(inp): |
| |
| |
| img = tf.convert_to_tensor(inp, dtype=tf.float32) |
| |
| |
| img = tf.image.resize(img, (160,160)) |
| |
| |
|
|
| out = new_model.predict(tf.expand_dims(img,0)).flatten() |
| predictions = tf.where(out < 0.5, 0, 1) |
| predictions = tf.squeeze(predictions) |
|
|
| print("The out : ", out[0]) |
| if out[0] > 0.5 : |
| return {'dog': 1} |
| else: |
| return {'cat': 1} |
| |
| |
| demo = gr.Interface(fn=image_classifier, inputs="image", outputs="label") |
| demo.launch(debug=True) |