Foxy-Roxy's picture
Upload app.py
b1d3acf verified
Raw
History Blame Contribute Delete
1.08 kB
import os
os.environ["STREAMLIT_DISABLE_WATCHDOG_WARN"] = "1"
os.environ["PYTHONASYNCIODEBUG"] = "1"
import streamlit as st
from ultralytics import YOLO
from PIL import Image
import tempfile
# Load YOLO model
@st.cache_resource
def load_model():
return YOLO("best (2).pt")
model = load_model()
# Streamlit UI
st.title("๐Ÿ›ž Defective Tyre Detection")
st.write("Upload an image to detect defects using a YOLO model.")
uploaded_file = st.file_uploader("Upload Image", type=["jpg", "jpeg", "png"])
if uploaded_file:
# Load and show original image
image = Image.open(uploaded_file).convert("RGB")
st.image(image, caption="Uploaded Image", use_column_width=True)
# Save to temp file because ultralytics expects a path or ndarray
with tempfile.NamedTemporaryFile(suffix=".png", delete=False) as tmp:
image.save(tmp.name)
results = model(tmp.name)
# Draw detections
result_image = Image.fromarray(results[0].plot())
st.image(result_image, caption="Detection Result", use_column_width=True)