import gradio as gr | |
from fastai.vision.all import * | |
from PIL import Image | |
learn_inf = load_learner("explort.pkl") | |
def predict(value: Image.Image) -> str: | |
pred,pred_idx,probs = learn_inf.predict(value) | |
return f"{pred} at {probs[pred_idx]}" | |
with gr.Blocks() as demo: | |
with gr.Row(): | |
with gr.Column(): | |
input_img = gr.Image(label="Input", sources="webcam") | |
with gr.Column(): | |
output_lbl = gr.Label(value="Output", label="Expression Prediction") | |
input_img.stream(fn=predict, inputs=[input_img], outputs=[output_lbl], time_limit=15, stream_every=0.1, concurrency_limit=30) | |
if __name__ == "__main__": | |
demo.launch() |