# app.py for Hugging Face Space frontend import requests from PIL import Image from io import BytesIO import streamlit as st # HF Spaces supports Streamlit out of the box # ----------------------------- # Config: Use your cloudflare URL # ----------------------------- API_URL = "https://greensboro-scholar-under-voted.trycloudflare.com/predict" st.title("Solar PV EL Image Segmentation") uploaded_file = st.file_uploader("Upload an EL image", type=["png", "jpg", "jpeg"]) if uploaded_file is not None: st.image(uploaded_file, caption="Input EL Image", use_column_width=True) # Prepare image for POST files = {"file": (uploaded_file.name, uploaded_file, "image/png")} with st.spinner("Running segmentation..."): response = requests.post(API_URL, files=files) if response.status_code == 200: # Read image from response segmented_img = Image.open(BytesIO(response.content)) st.image(segmented_img, caption="Segmented Output", use_column_width=True) else: st.error(f"Segmentation failed! Status code: {response.status_code}")