Spaces:
Sleeping
Sleeping
File size: 3,353 Bytes
507214e b376db3 83cc83a 507214e 6619af4 507214e 83cc83a 507214e 8ccc1d9 6619af4 8ccc1d9 507214e 8ccc1d9 507214e a89aba1 507214e b376db3 8ccc1d9 a89aba1 8ccc1d9 a89aba1 8ccc1d9 507214e |
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
import gradio as gr
from PIL import Image
import numpy as np
import os
import uuid
def inference(input_img):
temp = uuid.uuid4()
shell = f"python yolov9/detect.py --source {input_img} --img 640 --device cpu --weights yolov9/runs/train/exp/weights/best.pt --name {temp}"
os.system(shell)
return f"yolov9/runs/detect/{temp}/{input_img.split('/')[-1]}"
#return "yolov9/runs/detect/f807164a-496b-413c-bb47-f5daf8803dcd/cut_a_1.mp4"
def inference_video(input_img):
org_img = input_img
return input_img
with gr.Blocks() as demo:
gr.Markdown(
"""
# Vehicle detection using Yolo-v9
"""
)
with gr.Tab("Video"):
gr.Markdown(
"""
Upload video file and detect vehicles present in the video.
Inferencing is done using CPU therefore it takes more time.
"""
)
with gr.Row():
img_input = [gr.PlayableVideo(label="Input Image", autoplay=True, width=300, height=300)]
pred_outputs = [gr.PlayableVideo(label="Output Image",width=640, autoplay=True, height=640)]
gr.Markdown("## Examples")
with gr.Row():
gr.Examples([
'cut_a_2.mp4',
'cut_b_1.mp4','tresa.mp4'],
inputs=img_input, fn=inference)
image_button = gr.Button("Predict")
image_button.click(inference, inputs=img_input, outputs=pred_outputs)
with gr.Tab("Image"):
gr.Markdown(
"""
Upload image file and detect vehicles present in the image.
"""
)
with gr.Row():
img_input = [gr.Image(type="filepath",label="Input Image",width=300, height=300)]
pred_outputs = [gr.Image(label="Output Image",width=640, height=640)]
gr.Markdown("## Examples")
with gr.Row():
gr.Examples([
'rohan.jpg',
'lamborghini-aventador-2932196_1280.jpg',
'0KL1ICR33YYZ.jpg',
'0RVD53V60NOM.jpg',
'0RW4I2NTAH8K.jpg',
'1CSLEJ2UJD3G.jpg',
'1E4CD5K13UXO.jpg',
'2.jpg',
'truck.jpg',
'3BXRTQZ70A7M.jpg',
'3GVLVIQ2J4P2.jpg',
'3RIYE11PE0VK.jpg',
'4AS6VDRS3Y07.jpg',
'4DM206U83T3B.jpg',
'05U2U2R2K6DN.jpg',
'6LBV93O0MWUY.jpg',
'6MFW23QQFW3E.jpg',
'6V4OYHB47QOX.jpg',
'6VOUS49LKRLI.jpg',
'6VOUS49LKRLI.jpg',
'7L1KFQDNLCBY.jpg',
'23BNPRMYV2RT.jpg',
'24IHCQ74TBML.jpg',
'38EE8ZBTSGD1.jpg',
'05U2U2R2K6DN.jpg',
'0KL1ICR33YYZ.jpg'
],
inputs=img_input, fn=inference)
image_button = gr.Button("Predict")
image_button.click(inference, inputs=img_input, outputs=pred_outputs)
demo.launch(share=True)
|