Spaces:
Sleeping
Sleeping
from ultralytics import YOLO | |
import cv2 | |
import gradio as gr | |
def gap_det(img): | |
model = YOLO("best.pt") | |
input_image_path = img | |
results = model(input_image_path) | |
gap_up_count = 0 | |
gap_down_count = 0 | |
for result in results: | |
boxes = result.boxes.xyxy | |
classes = result.boxes.cls | |
confidences = result.boxes.conf | |
for cls in classes: | |
if cls == 0: | |
gap_down_count += 1 | |
elif cls == 1: | |
gap_up_count += 1 | |
annotated_image = result.plot() | |
output_image_path = "output_image.jpg" | |
cv2.imwrite(output_image_path, annotated_image) | |
annotated_image_rgb = cv2.cvtColor(annotated_image, cv2.COLOR_BGR2RGB) | |
return annotated_image_rgb, gap_up_count, gap_down_count | |
with gr.Blocks() as demo: | |
gr.Markdown("# GAP UP and GAP DOWN Detection") | |
gr.Markdown("Upload an image to detect GAP UP and GAP DOWN patterns in stock market candlestick charts.") | |
with gr.Row(): | |
input_image = gr.Image(label="Upload Image", type="filepath") | |
output_image = gr.Image(label="Detected Image") | |
with gr.Row(): | |
gap_up_output = gr.Textbox(label="GAP UP Count") | |
gap_down_output = gr.Textbox(label="GAP DOWN Count") | |
submit_button = gr.Button("Detect") | |
submit_button.click( | |
fn=gap_det, | |
inputs=input_image, | |
outputs=[output_image, gap_up_output, gap_down_output] | |
) | |
demo.launch() |