Spaces:
Build error
Build error
File size: 1,251 Bytes
9bbe87e 4f5f0dd 9aa3367 812afe6 9bbe87e 4f5f0dd 9bbe87e 4f5f0dd 9bbe87e 788bf64 9bbe87e 9aa3367 9bbe87e 9aa3367 9bbe87e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
import gradio as gr
from PIL import Image, UnidentifiedImageError
from datetime import datetime
import pytz
from ocr_engine import extract_weight_from_image # Make sure this file exists
def detect_weight(image: Image.Image):
try:
# Get IST timestamp
ist_time = datetime.now(pytz.timezone("Asia/Kolkata")).strftime("%Y-%m-%d %H:%M:%S")
# Perform OCR
weight, confidence = extract_weight_from_image(image)
if confidence > 0:
result = f"β
**Detected Weight:** {weight} \nπ **Confidence:** {confidence:.2f} \nπ **Captured At (IST):** {ist_time}"
else:
result = "β No weight detected. Please upload a clearer image."
return image, result
except UnidentifiedImageError:
return None, "β Invalid image format."
# Gradio UI
demo = gr.Interface(
fn=detect_weight,
inputs=gr.Image(type="pil", label="Upload or Capture Image"),
outputs=[
gr.Image(type="pil", label="Snapshot"),
gr.Markdown(label="Result")
],
title="βοΈ Auto Weight Logger",
description="Upload or capture a digital scale snapshot to detect weight automatically.",
allow_flagging="never"
)
if __name__ == "__main__":
demo.launch()
|