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() |