Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from gradio.mix import Parallel | |
| from fastai.vision.all import load_learner | |
| def classify_image_color(img): | |
| from fastai.vision.all import load_learner | |
| learn = load_learner('model-color.pkl') | |
| categories = learn.dls.vocab | |
| pred, idx, probs = learn.predict(img) | |
| return {f"{category}": float(prob) for category, prob in zip(categories, probs)} | |
| def classify_image_shape(img): | |
| from fastai.vision.all import load_learner | |
| learn = load_learner('bricks-model.pkl') | |
| categories = learn.dls.vocab | |
| pred, idx, probs = learn.predict(img) | |
| return {f"{category}": float(prob) for category, prob in zip(categories, probs)} | |
| def classify_image(img): | |
| color_result = classify_image_color(img) | |
| shape_result = classify_image_shape(img) | |
| result = {} | |
| for key in set(color_result.keys()) | set(shape_result.keys()): | |
| result[key] = color_result.get(key, 0.0) + shape_result.get(key, 0.0) | |
| return result | |
| def postprocess(prediction): | |
| sorted_pred = sorted(prediction.items(), key=lambda x: x[1], reverse=True) | |
| return sorted_pred | |
| image = gr.inputs.Image(shape=(256, 256)) | |
| label = gr.outputs.Label() | |
| intf = gr.Interface( | |
| fn=classify_image, | |
| inputs=image, | |
| outputs=label, | |
| examples="", | |
| title="Lego Brick Classifier", | |
| layout="vertical" | |
| ) | |
| intf.launch() | |