Spaces:
Runtime error
Runtime error
import gradio as gr | |
import os, sys | |
import cv2 | |
# Ensure services is importable | |
sys.path.append(os.path.join(os.path.dirname(__file__), "services")) | |
from video_service import get_video_frame | |
from detection_service import detect_objects | |
from thermal_service import detect_thermal_anomalies | |
from shadow_detection import detect_shadow_coverage | |
from salesforce_dispatcher import send_to_salesforce | |
frame_generator = get_video_frame("data/sample_pole_video.mp4") | |
def detect_frame(): | |
try: | |
frame = next(frame_generator) | |
temp_path = "temp.jpg" | |
cv2.imwrite(temp_path, frame) | |
objects = detect_objects(temp_path) | |
thermal = detect_thermal_anomalies(temp_path) | |
shadow = detect_shadow_coverage(temp_path) | |
alert = { | |
"detections": objects, | |
"thermal": bool(thermal), | |
"shadow_issue": shadow, | |
} | |
send_to_salesforce(alert) | |
return frame | |
except StopIteration: | |
return None | |
gr.Interface( | |
fn=detect_frame, | |
inputs=[], | |
outputs="image", | |
live=True, | |
title="VIEP Smart Pole Live Fault Detection" | |
).launch() | |