DimasMP3
Re-upload model with LFS fixed
1af914e
import gradio as gr
from inference import predict, predict_batch
APP_TITLE = "# Fruit & Vegetable Classification"
APP_DESC = """
Model CNN berbasis TensorFlow untuk 15 kelas sayur/buah dari dataset Fresh & Rotten.
- Input : Foto RGB tunggal, otomatis di-resize ke ukuran input model.
- Output : Probabilitas per kelas (Top-N dari gr.Label).
- Catatan: Gunakan gambar close-up dengan satu objek utama untuk hasil terbaik.
"""
with gr.Blocks(theme=gr.themes.Soft()) as demo:
gr.Markdown(APP_TITLE)
gr.Markdown(APP_DESC)
with gr.Row():
inp = gr.Image(type="pil", label="Upload image (fruit/vegetable)")
out = gr.Label(num_top_classes=5, label="Predictions")
with gr.Row():
btn = gr.Button("Predict", variant="primary")
gr.ClearButton([inp, out])
btn.click(predict, inputs=inp, outputs=out, api_name="predict")
with gr.Tab("Batch (optional)"):
gal = gr.Gallery(label="Images", columns=4, height="auto")
out_gal = gr.JSON(label="Batch outputs")
runb = gr.Button("Run batch")
runb.click(predict_batch, inputs=gal, outputs=out_gal, api_name="predict_batch")
if __name__ == "__main__":
demo.launch()