Spaces:
Sleeping
Sleeping
import gradio as gr | |
import numpy as np | |
from fish_feeding import FishFeeding | |
import cv2 | |
model = FishFeeding() | |
model.load_models() | |
def FrameCapture(path): | |
# Path to video file | |
vidObj = cv2.VideoCapture(path) | |
success = 1 | |
images = [] | |
count = 0 | |
while success: | |
success, image = vidObj.read() | |
if success and count % 3 == 0: | |
image= np.array(image, dtype=np.uint8) | |
images.append(image) | |
count += 1 | |
return images | |
def fish_feeding(images): | |
images = FrameCapture(images) | |
total_feed, times = model.final_fish_feed(images) | |
return {"total_feed": total_feed, "times": times} | |
inputs = gr.Video(label="Upload fish images") | |
outputs = gr.JSON(label="Fish Feeding Results") | |
app = gr.Interface(fish_feeding, inputs=inputs, outputs=outputs, title="Fish Feeding Predictor") | |
app.launch() | |