File size: 1,018 Bytes
f68e74f |
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
import os
import tempfile
from Fight_detec_func import fight_detec
from objec_detect_yolo import detection
def analyze_video(video_file):
# Save uploaded file to temp location
def analyze_video(video_file):
temp_dir = "/tmp"
video_path = os.path.join(temp_dir, os.path.basename(video_file)) # ✅ fix
with open(video_path, 'wb') as f:
f.write(video_file.read())
# Run both detection functions
fight_result = fight_detec(video_path, debug=False)
yolo_result = detection(video_path)
# Clean up
os.remove(video_path)
os.rmdir(temp_dir)
return {
"Fight Detection": fight_result[0],
"YOLO Object Detection": yolo_result
}
iface = gr.Interface(
fn=analyze_video,
inputs=gr.Video(label="Upload Video"),
outputs=gr.JSON(label="Detection Results"),
title="Fight and Object Detection System",
description="Upload a video to detect fights and objects using our AI models"
)
iface.launch()
|